import java.awt.*; import java.awt.event.*; import java.awt.AWTEvent; public class PopMenus extends Frame { MenuBar menu = new MenuBar(); PopupMenu p = new PopupMenu(); public void init() { setSize(300,300); Menu f = new Menu("file"); f.add(new MenuItem("new",new MenuShortcut(KeyEvent.VK_N))); f.add(new MenuItem("open" ,new MenuShortcut(KeyEvent.VK_O))); f.add(new MenuItem("close" ,new MenuShortcut(KeyEvent.VK_C))); f.addSeparator(); f.add(new MenuItem("print" ,new MenuShortcut(KeyEvent.VK_P))); f.addSeparator(); f.add(new MenuItem("exit" ,new MenuShortcut(KeyEvent.VK_E))); menu.add(f); Menu e = new Menu("edit"); e.add(new MenuItem ("cut")); e.add(new MenuItem ("copy")); e.add(new MenuItem ("paste")); menu.add(e); Menu o = new Menu("options"); Menu s = new Menu("settings"); s.add(new MenuItem("printer")); s.add(new MenuItem("tab")); Menu c = new Menu("colors"); c.add(new MenuItem("background")); c.add(new MenuItem("item")); o.add(s); o.add(c); menu.add(o); Menu h = new Menu("help"); f.add(new MenuItem ("how to use")); f.add(new MenuItem ("about")); menu.add(h); setMenuBar(menu); enableEvents(AWTEvent.MOUSE_EVENT_MASK); p.add(new MenuItem("cut")); p.add(new MenuItem("copy")); p.add(new MenuItem("paste")); add(p); setVisible(true); } public void processMouseEvent(MouseEvent e) { if(e.getID() == MouseEvent.MOUSE_RELEASED & e.isPopupTrigger()) p.show(this, e.getX(), e.getY()); } public PopMenus(String caption) { super(caption); init(); } public static void main (String args[]) { PopMenus m = new PopMenus("my first menus"); } }