If you want a vertical menu bar, simply change the LayoutManager of the menu bar component.
import java.awt.GridLayout; import java.awt.LayoutManager; import java.awt.event.KeyEvent; import javax.swing.JFrame; import javax.swing.JMenu; import javax.swing.JMenuBar; class VerticalMenuBar extends JMenuBar { private static final LayoutManager grid = new GridLayout(0,1); public VerticalMenuBar() { setLayout(grid); } } public class VerticalMenuBarDemo { public static void main(final String args[]) { JFrame frame = new JFrame("MenuSample Example"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); JMenuBar menuBar = new VerticalMenuBar(); // File Menu, F - Mnemonic JMenu fileMenu = new JMenu("File"); fileMenu.setMnemonic(KeyEvent.VK_F); menuBar.add(fileMenu); JMenu editMenu = new JMenu("Edit"); menuBar.add(editMenu); frame.setJMenuBar(menuBar); frame.setSize(350, 250); frame.setVisible(true); } }
14.22.JMenuBar | ||||
14.22.1. | Creating JMenuBar Components | |||
14.22.2. | Adding Menus to and Removing Menus From Menu Bars | |||
14.22.3. | Menu Accelerator | |||
14.22.4. | Vertical menu bar | |||
14.22.5. | Shows how to right-align a menu in the menu bar, using a glue component | |||
14.22.6. | Customize menu layout by changing the menu bar to use a top-to-bottom box layout, and the popup menu to use a left-to-right box layout | |||
14.22.7. | Customizing JMenuBar Look and Feel |