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
|
package swingTest;
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JTextField;
public class CalTest extends JFrame implements ActionListener {
private JTextField tf1, tf2, tf3;
public CalTest() {
setTitle("계산기");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLayout(new FlowLayout());
tf1=new JTextField(5); //숫자 1
tf2=new JTextField(5); //숫자 2
tf3=new JTextField(20); //결과
JButton b1=new JButton("+");
JButton b2=new JButton("-");
JButton b3=new JButton("*");
JButton b4=new JButton("/");
b1.addActionListener(this);
b2.addActionListener(this);
b3.addActionListener(this);
b4.addActionListener(this);
add(new JLabel("숫자1"));
add(tf1);
add(new JLabel("숫자2"));
add(tf2);
add(b1); add(b2); add(b3); add(b4);
add(new JLabel("결과"));
add(tf3);
setSize(700,100);
setVisible(true);
}
public static void main(String[] args) {
new CalTest();
}
@Override
public void actionPerformed(ActionEvent e) {
String str=e.getActionCommand();
try {
int a= Integer.parseInt(tf1.getText());
int b= Integer.parseInt(tf2.getText());
switch(str) {
case "+" : tf3.setText(String.valueOf(a+b)); break;
case "-" : tf3.setText(a-b+""); break; //문자를 더하면 자동적으로 문자로 바뀜
case "*" : tf3.setText(a*b+""); break;
case "/" : tf3.setText(a/b+""); break;
}
}catch (NumberFormatException n) {
tf3.setText("숫자를 입력하세요");
}catch (ArithmeticException a) {
tf3.setText("0으로 나눌 수 없습니다.");
}
}
}
|
cs |
'Learning > JAVA' 카테고리의 다른 글
TextField에 입력한 값을 "추가" 버튼을 눌렀을때 TextArea에 나타내기. (다중선택 가능) (ListTest) (0) | 2020.06.26 |
---|---|
BorderLayout 이용하여 계산기 만들기 (0) | 2020.06.26 |
Swing 이용하여 컴포넌트 3개 만들기 (0) | 2020.06.26 |
나라와 수도를 입력하고 퀴즈를 맞추는 CapitalTest 클래스 작성 (0) | 2020.06.11 |
이름, 학과, 학번, 학점 정보를 가진 Student클래스, ArrayList<Student> 컬렉션을 만들고, 사용자로부터 입력받아 저장하고, 학생 이름으로 검색하는 StudentManager 클래스 작성 (0) | 2020.06.11 |