Source of MenuAdd.java


  1: import javax.swing.JFrame;
  2: import javax.swing.JMenu;
  3: import javax.swing.JMenuBar;
  4: import javax.swing.JMenuItem;
  5: import javax.swing.JPanel;
  6: import javax.swing.JTextArea;
  7: import java.awt.Color;
  8: import java.awt.Container;
  9: import java.awt.BorderLayout;
 10: import java.awt.event.ActionEvent;
 11: import java.awt.event.ActionListener;
 12: 
 13: public class MenuAdd extends JFrame implements ActionListener
 14: {
 15:     public static final int WIDTH = 600;
 16:     public static final int HEIGHT = 300;
 17:     public static final int LINES = 10;
 18:     public static final int CHAR_PER_LINE = 40;
 19: 
 20:     private JTextArea theText;
 21:     private String memo1 = "No Memo 1.";
 22:     private String memo2 = "No Memo 2.";
 23: 
 24:     public MenuAdd()
 25:     {
 26:         setSize(WIDTH, HEIGHT);
 27:         addWindowListener(new WindowDestroyer());
 28:         setTitle("Memo Saver");
 29:         Container contentPane = getContentPane();
 30:         contentPane.setLayout(new BorderLayout());
 31: 
 32:         JMenu memoMenu = new JMenu("Memos");
 33:         JMenuItem m;
 34: 
 35:         m = new JMenuItem("Save Memo 1");
 36:         m.addActionListener(this);
 37:         memoMenu.add(m);
 38: 
 39:         m = new JMenuItem("Save Memo 2");
 40:         m.addActionListener(this);
 41:         memoMenu.add(m);
 42: 
 43:         m = new JMenuItem("Get Memo 1");
 44:         m.addActionListener(this);
 45:         memoMenu.add(m);
 46: 
 47:         m = new JMenuItem("Get Memo 2");
 48:         m.addActionListener(this);
 49:         memoMenu.add(m);
 50: 
 51:         m = new JMenuItem("Clear");
 52:         m.addActionListener(this);
 53:         memoMenu.add(m);
 54: 
 55:         m = new JMenuItem("Exit");
 56:         m.addActionListener(this);
 57:         memoMenu.add(m);
 58: 
 59:         JMenuBar mBar = new JMenuBar();
 60:         mBar.add(memoMenu);
 61:         contentPane.add(mBar, BorderLayout.SOUTH);
 62: 
 63:         JPanel textPanel = new JPanel();
 64:         textPanel.setBackground(Color.BLUE);
 65:         theText = new JTextArea(LINES, CHAR_PER_LINE);
 66:         theText.setText("Menu bar is at the bottom.");
 67:         theText.setBackground(Color.WHITE);
 68:         textPanel.add(theText);
 69:         contentPane.add(textPanel, BorderLayout.CENTER);
 70:     }
 71: 
 72:     public void actionPerformed(ActionEvent e)
 73:     {
 74:         String actionCommand = e.getActionCommand();
 75:         if (actionCommand.equals("Save Memo 1"))
 76:             memo1 = theText.getText();
 77:         else if (actionCommand.equals("Save Memo 2"))
 78:             memo2 = theText.getText();
 79:         else if (actionCommand.equals("Clear"))
 80:             theText.setText("");
 81:         else if (actionCommand.equals("Get Memo 1"))
 82:             theText.setText(memo1);
 83:         else if (actionCommand.equals("Get Memo 2"))
 84:             theText.setText(memo2);
 85:         else if (actionCommand.equals("Exit"))
 86:             System.exit(0);
 87:         else
 88:             theText.setText("Error in memo interface");
 89:     }
 90: 
 91:     public static void main(String[] args)
 92:     {
 93:         MenuAdd gui = new MenuAdd();
 94:         gui.setVisible(true);
 95:     }
 96: }