Java Swing GUI for Rectangle Calculator
Java Swing GUI for Rectangle Calculator
STIA1014 : Introduction To
Programming
GUI
Graphical User interface
suki1207@[Link] 1
JAVA GUI STIA1014 Session A232
Palette
Design
Area
Navigator
Properties
suki1207@[Link] 2
JAVA GUI STIA1014 Session A232
Getting Started
1) Drag Label
& Button to the
design area
2) Right click at
Label & choose
Edit Text, change
to “Display Label”
3) Perform similarly
for Button, change
to “Click Me to
Display Label”
suki1207@[Link] 3
JAVA GUI STIA1014 Session A232
GUI Coding
1) Right click at Label
& choose Change
Variable Name,
change to “lblOut”.
2) Double
click Button.
GUI Coding
1) Make sure you’re
in the right
jButtonAction area,
create some spaces
for your coding
2) Type:
[Link](“Hello GUI”);
3) Run it again.
Click your button
after it is executed
suki1207@[Link] 4
JAVA GUI STIA1014 Session A232
10
suki1207@[Link] 5
JAVA GUI STIA1014 Session A232
11
12
suki1207@[Link] 6
JAVA GUI STIA1014 Session A232
13
-Double-click the JTextField to select its display text & press Delete.
- The width of the JTextField will be reduced. You need to resize (make it
wider) the JTextField by dragging the JTextField's right edge resize handle
toward the right edge of the enclosing JFrame
14
suki1207@[Link] 7
JAVA GUI STIA1014 Session A232
15
16
suki1207@[Link] 8
JAVA GUI STIA1014 Session A232
17
18
suki1207@[Link] 9
JAVA GUI STIA1014 Session A232
19
20
suki1207@[Link] 10
JAVA GUI STIA1014 Session A232
Generated
codes
21
22
suki1207@[Link] 11
JAVA GUI STIA1014 Session A232
23
24
suki1207@[Link] 12
JAVA GUI STIA1014 Session A232
25
• Repeat the previous steps to rename the variable for Reset button from
jButton2 to resetBtn
resetBtn
26
suki1207@[Link] 13
JAVA GUI STIA1014 Session A232
27
28
suki1207@[Link] 14
JAVA GUI STIA1014 Session A232
widthTF
areaTF
perimeterTF
29
30
suki1207@[Link] 15
JAVA GUI STIA1014 Session A232
31
• The action performed by the Compute button can be divided into 3 steps:
1. It is going to accept user inputs, length & width, from the textfields
lengthTF and widthTF and convert the inputs from type String to
double,
2. It will then perform calculation of rectangle area & perimeter based on
the inputs length & width,
3. It will convert the area & perimeter to type String and place them in the
areaTF & perimeterTF respectively.
32
suki1207@[Link] 16
JAVA GUI STIA1014 Session A232
Step 1
Step 2
Step 3
33
34
suki1207@[Link] 17
JAVA GUI STIA1014 Session A232
•Next, we add the codes to implement what we want the Reset Button to do
(replacing the // TODO add your handling code here: line)
35
36
suki1207@[Link] 18
JAVA GUI STIA1014 Session A232
37
38
suki1207@[Link] 19
JAVA GUI STIA1014 Session A232
Exercise 1
39
Exercise 2
40
suki1207@[Link] 20
JAVA GUI STIA1014 Session A232
Exercise 3
41
Exercise 4
42
suki1207@[Link] 21
JAVA GUI STIA1014 Session A232
Exercise 5
43
Exercise 6
44
suki1207@[Link] 22
JAVA GUI STIA1014 Session A232
Exercise 7
45
Reset &Exit
Button
46
suki1207@[Link] 23
JAVA GUI STIA1014 Session A232
47
Multiple jFrames
48
suki1207@[Link] 24
JAVA GUI STIA1014 Session A232
EXAMPLE
49
50
suki1207@[Link] 25
JAVA GUI STIA1014 Session A232
51
[Link](null,
"Uh-oh!", "Error",
JOptionPane.ERROR_MESSAGE);
[Link](null,
"I like turtles.", "Customized Dialog",
JOptionPane.INFORMATION_MESSAGE,
icon);
52
suki1207@[Link] 26
JAVA GUI STIA1014 Session A232
[Link]
String m =
[Link]("Any
one there?");
String m =
[Link]
log("Anyone there?");
[Link]("Hello:
\n"+m);
53
[Link]
String m =
[Link]("Any
one there?", 42);
String m =
[Link](null,
"Broccoli is tasty!", "Green dinner",
JOptionPane.INFORMATION_MESSAGE);
Integer[] options = {2, 3, 5, 7, 9, 11};
int n =
(Integer)[Link]
(null, "Pick a number that is not prime:",
"Prime numbers",
JOptionPane.QUESTION_MESSAGE, null,
options, options[2]);
54
suki1207@[Link] 27
JAVA GUI STIA1014 Session A232
55
56
suki1207@[Link] 28
JAVA GUI STIA1014 Session A232
57
Sample Solution
58
suki1207@[Link] 29
JAVA GUI STIA1014 Session A232
Implementing Options
with radio Button
59
Exercise 2
60
suki1207@[Link] 30
JAVA GUI STIA1014 Session A232
61
Implementing
Counter with Button
62
suki1207@[Link] 31
JAVA GUI STIA1014 Session A232
Exercise 3
63
64
suki1207@[Link] 32
JAVA GUI STIA1014 Session A232
65
Reset/Again Button
66
suki1207@[Link] 33
JAVA GUI STIA1014 Session A232
Finish
Button
67
Exercise 4
68
suki1207@[Link] 34
JAVA GUI STIA1014 Session A232
69
JTABLE
70
suki1207@[Link] 35
JAVA GUI STIA1014 Session A232
Variable name:
tblResult
71
1. DefaultTableModel model =
(DefaultTableModel)[Link]();
2. [Link](value, indColumn, indRow);
72
suki1207@[Link] 36
JAVA GUI STIA1014 Session A232
Exercise 5
73
74
suki1207@[Link] 37
JAVA GUI STIA1014 Session A232
Exercise 6
75
76
suki1207@[Link] 38
JAVA GUI STIA1014 Session A232
77
78
suki1207@[Link] 39
JAVA GUI STIA1014 Session A232
Finish
Button
79
suki1207@[Link] 40