Way2Java

Create MenuBar, Menu Items, Menus Java Example

Menus Java are a number of pull-down combo boxes (In Java called as Choice) placed at single place for easy selection by the user.

To create menus, the java.awt package comes with mainly four classes – MenuBar, Menu, MenuItem and CheckboxMenuItem. All these four classes are not AWT components as they are not subclasses of java.awt.Component class. Infact, they are subclasses of java.awt.MenuComponent which is is no way connected in the hierarchy with Component class.

Following is a simple Menus Java program with just two menus added with few menu items. User selection is displayed at DOS prompt for simplicity to get the concept. A big program we see later.
import java.awt.*;
import java.awt.event.*;

public class SimpleMenuExample extends Frame implements ActionListener
{
  Menu states, cities;
  public SimpleMenuExample()
  {			
    MenuBar mb = new MenuBar();		        // begin with creating menu bar
    setMenuBar(mb);				// add menu bar to frame

    states = new Menu("Indian States");		// create menus   
    cities = new Menu("Indian Cities");	

    mb.add(states);				// add menus to menu bar
    mb.add(cities);

    states.addActionListener(this);		// link with ActionListener for event handling
    cities.addActionListener(this);

    states.add(new MenuItem("Himachal Pradesh"));
    states.add(new MenuItem("Rajasthan"));
    states.add(new MenuItem("West Bengal"));
    states.addSeparator();			// separates from north Indian states from south Indian
    states.add(new MenuItem("Andhra Pradesh"));
    states.add(new MenuItem("Tamilnadu"));
    states.add(new MenuItem("Karnataka"));

    cities.add(new MenuItem("Delhi"));
    cities.add(new MenuItem("Jaipur"));
    cities.add(new MenuItem("Kolkata"));
    cities.addSeparator();			// separates north Indian cities from south Indian
    cities.add(new MenuItem("Hyderabad"));
    cities.add(new MenuItem("Chennai"));
    cities.add(new MenuItem("Bengaluru"));

    setTitle("Simple Menu Program");		// frame creation methods
    setSize(300, 300);
    setVisible(true);
  }
  public void actionPerformed(ActionEvent e)
  {
    String str = e.getActionCommand();		// know the menu item selected by the user
    System.out.println("You selected " + str);
  }
  public static void main(String args[])
  {
    new SimpleMenuExample();
  }
}

A big menu program with code explanation, menu hierarchy and screenshot is available at Java AWT Menu – Multiple Pull-down Lists

View All for Java Differences on 90 Topics