-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathTemp.java
More file actions
104 lines (63 loc) · 1.88 KB
/
Temp.java
File metadata and controls
104 lines (63 loc) · 1.88 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
package GUI;
import javax.swing.*;
import javax.swing.event.ChangeEvent;
import javax.swing.event.ChangeListener;
import java.awt.*;
public class Temp extends JFrame {
private JPanel main;
private JPanel cel;
private JPanel fahr;
private JPanel sli;
private JSlider jSlider;
private JLabel c;
private JLabel f;
private JTextField ct;
private JTextField ft;
public Temp(){
setTitle("Tempreture converter");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
main = new JPanel();
main.setLayout(new BorderLayout());
build();
main.add(fahr,BorderLayout.NORTH);
main.add(cel,BorderLayout.CENTER);
main.add(sli,BorderLayout.SOUTH);
add(main);
pack();
setVisible(true);
}
public void build(){
c = new JLabel("Fahrenheit");
ct = new JTextField("0.0",10);
ct.setEditable(false);
f = new JLabel("Celsius");
ft = new JTextField("0.0",10);
ft.setEditable(false);
jSlider = new JSlider(JSlider.HORIZONTAL,0,100,0);
jSlider.setMajorTickSpacing(20);
jSlider.setMinorTickSpacing(2);
jSlider.setPaintTicks(true);
jSlider.setPaintLabels(true);
jSlider.addChangeListener(new cl());
fahr = new JPanel();
fahr.add(f);
fahr.add(ft);
cel = new JPanel();
cel.add(c);
cel.add(ct);
sli = new JPanel();
sli.add(jSlider);
}
private class cl implements ChangeListener{
public void stateChanged(ChangeEvent e){
double cel,far;
cel = jSlider.getValue();
far = (9.0 / 5.0) * cel + 32;
ct.setText(Double.toString(cel));
ft.setText(String.format("%.2f",far));
}
}
public static void main(String[] args) {
new Temp();
}
}