简易计算器
首先要了解输入框的事件监听//Testified
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class TestText01 {
public static void main(String[] args) {
//mian方法里面应该只有启动的代码
new MyFrame2();
}
}
class MyFrame2 extends Frame
{
public MyFrame2()
{
TextField textField = new TextField();
add(textField);
//监听整个文本框输入的文字
MyActionListener2 myActionListener2=new MyActionListener2();
//按下enter 会触发e.getsource监听事件
textField.addActionListener(myActionListener2);
setVisible(true);
pack();
//可以设置替换编码
textField.setEchoChar('*');
}
}
class MyActionListener2 implements ActionListener{
@Override
public void actionPerformed(ActionEvent e) {
TextField field =(TextField) e.getSource();//获得一些资源,返回的一个对象
System.out.println(field.getText());//获得输入框的文本
field.setText("");//输入置为空
}
}简易加法计算器
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
//简易计算机器
public class TextCalc {
public static void main(String[] args) {
new Calculator();
}
}
//计算器类
class Calculator extends Frame{
public Calculator()
{
//3个文本框
TextField num1 = new TextField(10);
TextField num2 = new TextField(10);
TextField num3 = new TextField(20);//zifushu
//1个标签
Label label = new Label("+");
//1个按钮
Button button = new Button("=");
button.addActionListener(new MyCalculatorListener(num1,num2,num3));
//布局
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)
{
//1.获得加数和被加数
int n1= Integer.parseInt(num1.getText());
int n2= Integer.parseInt(num2.getText());//文本框内由string转换
//加法运算后放到第三个框内
num3.setText(""+(n1+n2));
//清除前三个框
num1.setText("");
num2.setText("");
}
}



京公网安备 11010502036488号