public class MyFrame extends Frame { MyFrame() { CreateMenu(); } public boolean action(Event evt, Object what) { if (evt.target instanceof MenuButton) { return ((MenuButton) evt.target).action(evt, what); } else { return super.action(evt, what); } } private void CreateMenu() { MenuBar mb = new MenuBar(); Menu fileB = new Menu("File"); mb.add(fileB); fileB.add(new NewButton("New")); fileB.add(new QuitButton("Quit")); Menu editB = new Menu("Edit"); mb.add(editB); setMenuBar(mb); pack(); } } class MenuButton extends MenuItem { MenuButton(String name) { super(name); } public boolean action(Event evt, Object what) { return false; } } class QuitButton extends MenuButton { QuitButton(String name) { super(name); } public boolean action(Event evt, Object what) { exit(); return true; } } class NewButton extends MenuButton { NewButton(String name) { super(name); } public boolean action(Event evt, Object what) { System.out.println("New selected"); return true; } }