home *** CD-ROM | disk | FTP | other *** search
/ Java 1.2 How-To / JavaHowTo.iso / javafile / ch08 / Menu1.java < prev    next >
Text File  |  1998-12-14  |  3KB  |  124 lines

  1. import java.awt.*;
  2. import java.awt.event.*;
  3. import javax.swing.*;
  4. import javax.swing.event.*;
  5.  
  6. public class Menu1 extends JPanel
  7.     implements ActionListener, MenuListener
  8. {
  9.     JTextField fldStatus;
  10.  
  11.     //Create the menu class
  12.     public Menu1(JFrame frm)
  13.     {
  14.         JMenuBar bar = new JMenuBar();
  15.         JMenu menu = new JMenu("Strategy");
  16.         JMenuItem tmp;
  17.  
  18.         setBackground(Color.lightGray);
  19.         setLayout(new BorderLayout());
  20.  
  21.         setDoubleBuffered(true);
  22.  
  23.         menu.addMenuListener(this);
  24.  
  25.         tmp = new JMenuItem("Lead");
  26.         tmp.addActionListener(this);
  27.         tmp.setActionCommand("Lead");
  28.         menu.add(tmp);
  29.  
  30.         tmp = new JMenuItem("Follow");
  31.         tmp.addActionListener(this);
  32.         tmp.setActionCommand("Follow");
  33.         menu.add(tmp);
  34.  
  35.         tmp = new JMenuItem("Resign");
  36.         tmp.addActionListener(this);
  37.         tmp.setActionCommand("Resign");
  38.         menu.add(tmp);
  39.  
  40.         tmp = new JMenuItem("Quit");
  41.         tmp.addActionListener(this);
  42.         tmp.setActionCommand("Quit");
  43.         menu.add(tmp);
  44.  
  45.         bar.add(menu);
  46.  
  47.         frm.setJMenuBar(bar); 
  48.  
  49.         fldStatus = new JTextField(10);
  50. add(fldStatus,"South");
  51.  
  52.     }//constructor
  53.  
  54.     public void actionPerformed(ActionEvent e)
  55.     {
  56.         String cmd;
  57.         cmd = e.getActionCommand();
  58.  
  59.         if (cmd.equals("Lead"))
  60.         {
  61.             fldStatus.setText("Action: Lead");
  62.         }
  63.         if (cmd.equals("Follow"))
  64.         {
  65.             fldStatus.setText("Action: Follow");
  66.         }
  67.         if (cmd.equals("Resign"))
  68.         {
  69.             fldStatus.setText("Action: Resign");
  70.         }
  71.         if (cmd.equals("Quit"))
  72.         {
  73.             System.exit(0);
  74.         }
  75.  
  76.     }
  77.  
  78.     public void menuSelected(MenuEvent e)
  79.     {
  80.         fldStatus.setText("Menu Selected");
  81.     }
  82.  
  83.     public void menuDeselected(MenuEvent e)
  84.     {
  85.         fldStatus.setText("Menu Deselected");
  86.     }
  87.  
  88.     public void menuCanceled(MenuEvent e)
  89.     {
  90.         fldStatus.setText("Menu Cancelled");
  91.     }
  92.  
  93.    public static void main(String s[])
  94.    {
  95.         JFrame f = new JFrame("Menu1");
  96.         Menu1 panel = new Menu1(f);
  97.  
  98.         f.setForeground(Color.black);
  99.         f.setBackground(Color.lightGray);
  100.         f.getContentPane().add(panel, "Center");
  101.  
  102.         f.setSize(300,200);
  103.         f.setVisible(true);
  104.         f.addWindowListener(new WindowCloser());
  105.  
  106.  
  107.     }//main
  108.  
  109.  
  110. }//class
  111.  
  112. //close down gracefully
  113. class WindowCloser extends WindowAdapter
  114. {
  115.     public void windowClosing(WindowEvent e)
  116.     {
  117.         Window win = e.getWindow();
  118.         win.setVisible(false);
  119.         win.dispose();
  120.         System.exit(0);
  121.     }//windowClosing
  122. }//class WindowCloser
  123.  
  124.