-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathMessageBoxes.java
More file actions
92 lines (79 loc) · 2.7 KB
/
MessageBoxes.java
File metadata and controls
92 lines (79 loc) · 2.7 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
package gui;
/**
* RUN:
* javac -cp .; gui/MessageBoxes.java && java -cp .; gui.MessageBoxes
* OUTPUT:
*
*/
import javax.swing.*;
import javax.swing.event.*;
import java.awt.*;
import java.awt.event.*;
import net.mindview.util.*;
public class MessageBoxes extends JFrame {
private static final int WIDTH = 400;
private static final int HEIHGT = 250;
private JButton[] b = {
new JButton("Alert"), new JButton("Yes/No"),
new JButton("Color"), new JButton("Input"),
new JButton("3 Vals")
};
private JTextField txt = new JTextField(15);
private ActionListener al = new ActionListener() {
public void actionPerformed(ActionEvent e) {
String id = ((JButton)e.getSource()).getText();
if (id.equals("Alert")) {
JOptionPane.showMessageDialog(
null, "There's a bug on you!", "Hey!",
JOptionPane.ERROR_MESSAGE
);
}
else if (id.equals("Yes/No")) {
JOptionPane.showConfirmDialog(
null, "or no", "choose yes",
JOptionPane.YES_NO_OPTION
);
}
else if (id.equals("Color")) {
Object[] options = {"Red", "Green"};
int sel = JOptionPane.showOptionDialog(
null, "Choose a Color!", "Warning",
JOptionPane.DEFAULT_OPTION,
JOptionPane.WARNING_MESSAGE,
null, options, options[0]
);
if (sel != JOptionPane.CLOSED_OPTION) {
txt.setText("Color Selected: " + options[sel]);
}
}
else if (id.equals("Input")) {
String val = JOptionPane.showInputDialog(
"How many fingers do you see?"
);
txt.setText(val);
}
else if (id.equals("3 Vals")) {
Object[] selections = {"First", "Second", "Third"};
Object val = JOptionPane.showInputDialog(
null, "Choose one", "Input",
JOptionPane.INFORMATION_MESSAGE,
null, selections, selections[0]
);
if (val != null) {
txt.setText(val.toString());
}
}
}
};
public MessageBoxes() {
setLayout(new FlowLayout());
for (int i = 0; i < b.length; i++) {
b[i].addActionListener(al);
add(b[i]);
}
add(txt);
}
public static void main(String[] args) {
SwingConsole.run(new MessageBoxes(), WIDTH, HEIHGT);
}
}