FileDocCategorySizeDatePackage
MenuCascade.javaAPI DocExample2200Sun Mar 11 21:28:36 GMT 2001None

MenuCascade

public class MenuCascade extends JFrame
Demonstrate Cascading Menus for students of Learning Tree Course 471/478
author
Ian Darwin

Fields Summary
JMenuBar
mb
JMenu
fm
JMenu
om
JMenu
hm
JMenu
opSubm
JMenuItem
mi
ActionListener
defaultHandler
Constructors Summary
MenuCascade(String s)

		super("MenuCascade: " + s);

		Container cp = getContentPane();
		cp.setLayout(new FlowLayout());

		mb = new JMenuBar();
		setJMenuBar(mb);

		// The File Menu...
		fm = new JMenu("File");
			fm.add(mi = new JMenuItem("Open"));
			mi.addActionListener(defaultHandler);
			fm.add(mi = new JMenuItem("Close"));
			mi.addActionListener(defaultHandler);
			fm.addSeparator();
			fm.add(mi = new JMenuItem("Exit"));
			mi.addActionListener(defaultHandler);
			mi.addActionListener(new ActionListener() {
				public void actionPerformed(ActionEvent e) {
					System.exit(0);
				}
			});
		mb.add(fm);

		// The Options Menu...
		om = new JMenu("Options");
			opSubm = new JMenu("SubOptions");
			opSubm.add(mi = new JMenuItem("Alpha"));
			mi.addActionListener(defaultHandler);
			opSubm.add(mi = new JMenuItem("Gamma"));
			mi.addActionListener(defaultHandler);
			opSubm.add(mi = new JMenuItem("Delta"));
			mi.addActionListener(defaultHandler);
			om.add(opSubm);
		mb.add(om);

		// The Help Menu...
		hm = new JMenu("Help");
			hm.add(mi = new JMenuItem("About"));
			mi.addActionListener(defaultHandler);
			mi.addActionListener(new ActionListener() {
				public void actionPerformed(ActionEvent e) {
					JOptionPane.showMessageDialog(
					MenuCascade.this,
					"Version 0", "Version 0",
					JOptionPane.INFORMATION_MESSAGE);
				}
			});
			hm.add(mi = new JMenuItem("Topics"));
			mi.addActionListener(defaultHandler);
		mb.add(hm);

		// the main window
		cp.add(new MyCanvas("Menu Demo Window", 200, 150));
		pack();
	
Methods Summary
public static voidmain(java.lang.String[] arg)


	     
		MenuCascade mb = new MenuCascade("Testing 1 2 3...");
		mb.setVisible(true);