public class MemoIconDemo extends JFrame implements ActionListener
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: }