-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathJava225_gui.java
More file actions
110 lines (85 loc) · 2.71 KB
/
Copy pathJava225_gui.java
File metadata and controls
110 lines (85 loc) · 2.71 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
package java0918_gui;
import java.awt.BorderLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.InputEvent;
import java.awt.event.KeyEvent;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFileChooser;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JToolBar;
import javax.swing.KeyStroke;
class MenuTest extends JFrame implements ActionListener {
JMenu file, edit, align, help;
JMenuItem fnew, open, save;
JMenuItem copy, paste, cut;
JMenuItem left, right, center;
// JToolBar에 연결할 컴포넌트 선언
JButton fnewBtn, openBtn, saveBtn;
public MenuTest() {
JMenuBar menubar = new JMenuBar();
file = new JMenu("File");
edit = new JMenu("Edit");
align = new JMenu("Align");
help = new JMenu("Help");
// 메뉴바에 메뉴를 연결한다.
menubar.add(file);
menubar.add(edit);
menubar.add(help);
// 프레임에 메뉴바를 연결한다.
setJMenuBar(menubar);
fnew = new JMenuItem("New");
open = new JMenuItem("Open");
save = new JMenuItem("Save");
// 서브메뉴 특정문자에 언더바를 표시한다.
fnew.setMnemonic('N');
open.setMnemonic('O');
save.setMnemonic('S');
fnew.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_N, InputEvent.CTRL_DOWN_MASK));
open.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_O, InputEvent.CTRL_DOWN_MASK));
save.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_S, InputEvent.CTRL_DOWN_MASK));
// file 메뉴에 서브메뉴 연결
file.add(fnew);
file.addSeparator(); // 구분선
file.add(open);
file.add(save);
left = new JMenuItem("Left");
right = new JMenuItem("Right");
center = new JMenuItem("Center");
// align 메뉴에 서브메뉴 연결
align.add(left);
align.add(right);
align.add(center);
edit.add(align);
JToolBar toolBar = new JToolBar();
fnewBtn = new JButton(new ImageIcon("src/java0918_gui/images/new.gif"));
openBtn = new JButton(new ImageIcon("src/java0918_gui/images/open.gif"));
saveBtn = new JButton(new ImageIcon("src/java0918_gui/images/save.gif"));
toolBar.add(fnewBtn);
toolBar.add(openBtn);
toolBar.add(saveBtn);
add(BorderLayout.NORTH, toolBar);
open.addActionListener(this);
openBtn.addActionListener(this);
setSize(500, 400);
setVisible(true);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
@Override
public void actionPerformed(ActionEvent e) {
Object obj = e.getSource();
if (obj == open || obj == openBtn) {
JFileChooser openFile = new JFileChooser();
openFile.showOpenDialog(this);
}
}
}
public class Java225_gui {
public static void main(String[] args) {
new MenuTest();
}
}