Skip to content

Commit eee453c

Browse files
author
java-tester-x
committed
GUI example Listeners
1 parent 6a74e11 commit eee453c

File tree

1 file changed

+91
-4
lines changed

1 file changed

+91
-4
lines changed

gui/TrackEvent.java

Lines changed: 91 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -20,18 +20,105 @@ public class TrackEvent extends JFrame {
2020

2121
private HashMap<String, JTextField> h = new HashMap<String, JTextField>();
2222

23-
private String[] = {
24-
"focusGained", "focusLost", "focusPressed",
23+
private String[] event = {
24+
"focusGained", "focusLost", "keyPressed",
2525
"keyReleased", "keyTyped", "mouseClicked",
2626
"mouseEntered", "mouseExited", "mousePressed",
2727
"mouseReleased", "mouseDragged", "mouseMoved"
2828
};
2929

30-
public TrackEvent() {
30+
private MyButton b1 = new MyButton(Color.BLUE, "test1");
31+
private MyButton b2 = new MyButton(Color.RED, "test2");
32+
33+
class MyButton extends JButton {
3134

35+
void report(String field, String msg) {
36+
h.get(field).setText(msg);
37+
}
38+
39+
FocusListener fl = new FocusListener() {
40+
public void focusGained(FocusEvent e) {
41+
report("focusGained", e.paramString());
42+
}
43+
44+
public void focusLost(FocusEvent e) {
45+
report("focusLost", e.paramString());
46+
}
47+
};
48+
49+
KeyListener kl = new KeyListener() {
50+
public void keyPressed(KeyEvent e) {
51+
report("keyPressed", e.paramString());
52+
}
53+
54+
public void keyReleased(KeyEvent e) {
55+
report("keyReleased", e.paramString());
56+
}
57+
58+
public void keyTyped(KeyEvent e) {
59+
report("keyTyped", e.paramString());
60+
}
61+
};
62+
63+
MouseListener ml = new MouseListener() {
64+
public void mouseClicked(MouseEvent e) {
65+
report("mouseClicked", e.paramString());
66+
}
67+
68+
public void mouseEntered(MouseEvent e) {
69+
report("mouseEntered", e.paramString());
70+
}
71+
72+
public void mouseExited(MouseEvent e) {
73+
report("mouseExited", e.paramString());
74+
}
75+
76+
public void mousePressed(MouseEvent e) {
77+
report("mousePressed", e.paramString());
78+
}
79+
80+
public void mouseReleased(MouseEvent e) {
81+
report("mouseReleased", e.paramString());
82+
}
83+
};
84+
85+
MouseMotionListener mml = new MouseMotionListener() {
86+
public void mouseDragged(MouseEvent e) {
87+
report("mouseDragged", e.paramString());
88+
}
89+
90+
public void mouseMoved(MouseEvent e) {
91+
report("mouseMoved", e.paramString());
92+
}
93+
};
94+
95+
public MyButton(Color color, String label) {
96+
super(label);
97+
setBackground(color);
98+
addFocusListener(fl);
99+
addKeyListener(kl);
100+
addMouseListener(ml);
101+
addMouseMotionListener(mml);
102+
}
103+
104+
}
105+
106+
public TrackEvent() {
107+
setLayout(new GridLayout(event.length + 1, 2));
108+
for (String evt : event) {
109+
JTextField t = new JTextField();
110+
t.setEditable(false);
111+
add(new JLabel(evt, JLabel.RIGHT));
112+
add(t);
113+
h.put(evt, t);
114+
}
115+
116+
add(b1);
117+
add(b2);
32118
}
33119

34120
public static void main(String[] args) {
35-
SwingConsole.run(new TrackEvent(), 300, 400;
121+
SwingConsole.run(new TrackEvent(), 700, 500);
122+
// System.out.println("Hi");
36123
}
37124
}

0 commit comments

Comments
 (0)