자바 GUI 덧셈 계산기 구현
1.간단 한 계산기 에 필요 한 구성 요 소 를 작성 합 니 다.
2.감청 사건 류 부터 낸다
public class TextCalculator01 {
public static void main(String[] args) {
new MyCalculator();
}
}
//
class MyCalculator extends Frame{
public MyCalculator() {
//
TextField num1 = new TextField(10);
TextField num2 = new TextField(10);
TextField num3 = new TextField(20);
//
Button button = new Button("=");
//
button.addActionListener(new MyCalculatorListener(num1,num2,num3));
//
Label label = new Label("+");
//
setLayout(new FlowLayout());//
add(num1);
add(label);
add(num2);
add(button);
add(num3);
setVisible(true);
pack();
}
}
//
class MyCalculatorListener implements ActionListener{
//
private TextField num1,num2,num3;
public MyCalculatorListener(TextField num1,TextField num2,TextField num3) {
this.num1= num1;
this.num2 = num2;
this.num3 = num3;
}
@Override
public void actionPerformed(ActionEvent e) {
//
int n1 = Integer.parseInt(num1.getText());// int
int n2 = Integer.parseInt(num2.getText());
// ,
num3.setText(""+(n1 + n2));
//
num1.setText("");
num2.setText("");
}
}
등호 버튼 을 누 르 면 앞의 두 상자 의 내용 이 삭제 되 고 세 번 째 상자 의 출력 결과 3
최 적 화 된 쓰기(완전 대상 지향)
//
public class TextCalculator {
public static void main(String[] args) {
new Calculator().loadFrame();
}
}
class Calculator extends Frame{
// ,
TextField num1,num2,num3;
//
public void loadFrame(){
//
num1 = new TextField(10);
num2 = new TextField(10);
num3 = new TextField(20);
Button button = new Button("=");
Label label = new Label("+");
button.addActionListener(new MyCalautor(this));
//
setLayout(new FlowLayout());//
add(num1);
add(label);
add(num2);
add(button);
add(num3);
setVisible(true);
pack();
}
}
//
class MyCalautor implements ActionListener{
// ,
Calculator calculator = null;
public MyCalautor(Calculator calculator) {
this.calculator = calculator;
}
@Override
public void actionPerformed(ActionEvent e) {
//1.
// 2.
//3.
int n1 = Integer.parseInt(calculator.num1.getText());
int n2 = Integer.parseInt(calculator.num2.getText());
calculator.num3.setText(""+(n1+n2));
calculator.num1.setText("");
calculator.num2.setText("");
}
}
이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Is Eclipse IDE dying?In 2014 the Eclipse IDE is the leading development environment for Java with a market share of approximately 65%. but ac...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.