Source of MemoIconDemo.java


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