package com.pan.lesson1;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
//简易计算器
public class TestCalc {
public static void main(String[] args) {
new Calculator().loadFrame();
}
}
class Calculator extends Frame{ //计算器类
TextField num1,num2,num3;
public void loadFrame(){
//需要3个文本框
num1 =new TextField(10);
num2 = new TextField(10); //columns 最大字符数
num3 = new TextField(20);
//一个按钮
Button button = new Button("=");
button.addActionListener(new MyCalculatorListener());
//一个标签
Label label = new Label("+");
//布局
setLayout(new FlowLayout());//流式布局
add(num1);
add(label); //+号
add(num2);
add(button); //= 按钮
add(num3);
pack(); //自适应大小
setVisible(true);
}
//监听器类
//内部类最大的好处,就是可以畅通无阻的访问外部类的属性和方法
class MyCalculatorListener implements ActionListener{
@Override
public void actionPerformed(ActionEvent e) {
//获得数字
int n1 = Integer.parseInt(num1.getText()); //将获取的数据转换为int类型
int n2 = Integer.parseInt(num2.getText()); //将获取的数据转换为int类型
//加法运算后结果放到num3文本框
num3.setText(""+(n1+n2)); //String 类型加法运算
//清除数据
num1.setText("");
num2.setText("");
}
}
}