public class MenuWindow extends Frame implements ActionListener ItemListener { . . . public MenuWindow() { //Build the menu bar. mb = new MenuBar(); setMenuBar(mb); //Build first menu in the menu bar. m1 = new Menu("Menu 1", true); mb.add(m1); mi1_1 = new MenuItem("Menu Item 1_1"); m1.add(mi1_1); . . . //Build help menu. m5 = new Menu("Menu 5"); mb.add(m5); //just setting the help menu doesn't work; must add it mb.setHelpMenu(m5); mi5_1 = new MenuItem("Menu Item 5_1"); mi5_1.setShortcut(new MenuShortcut(KeyEvent.VK_5)); m5.add(mi5_1); . . . //Build second menu in the menu bar. m2 = new Menu("Menu 2"); mb.add(m2); mi2_1 = new CheckboxMenuItem("Menu Item 2_1"); m2.add(mi2_1); //Build third menu in the menu bar. . . . //Register as an ActionListener for all menu items. m1.addActionListener(this); m2.addActionListener(this); m3.addActionListener(this); . . . //Register as ItemListener on checkbox menu item. mi2_1.addItemListener(this); } . . . public void actionPerformed(ActionEvent e) { output.append("\"" + e.getActionCommand() + "\" action detected in menu labeled \"" + ((MenuItem)(e.getSource())).getLabel() + "\".\n"); } public void itemStateChanged(ItemEvent e) { output.append("Item state change detected on item \"" + e.getItem() + "\" (state is " + ((e.getStateChange() == ItemEvent.SELECTED)? "selected)." : "deselected).") + "\n"); } }
Copyright © 1998-2009 Dilvan Moreira