Vertical menu bar : JMenuBar « Swing « Java Tutorial






If you want a vertical menu bar, simply change the LayoutManager of the menu bar component.

Vertical menu bar
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 ComponentsCreating JMenuBar Components
14.22.2.Adding Menus to and Removing Menus From Menu BarsAdding Menus to and Removing Menus From Menu Bars
14.22.3.Menu AcceleratorMenu Accelerator
14.22.4.Vertical menu barVertical menu bar
14.22.5.Shows how to right-align a menu in the menu bar, using a glue componentShows 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 layoutCustomize 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