这是要达到的效果下面将以三种不同方式完成
public class 计算器 {
public static void main(String[] args) {
new jisuanqi();
}
}
class jisuanqi extends Frame{
public jisuanqi(){
TextField field1 = new TextField(10);
TextField field2 = new TextField(10);
TextField field3 = new TextField(20);
Button button = new Button("=");
button.addActionListener(new MyCalculator(field1,field2,field3));
Label label = new Label("+");
setLayout(new FlowLayout());
add(field1);
add(label);
add(field2);
add(button);
add(field3);
pack();
setVisible(true);
}
}
class MyCalculator implements ActionListener{
TextField field1,field2,field3;
public MyCalculator(TextField field1,TextField field2,TextField field3){
this.field1=field1;
this.field2=field2;
this.field3=field3;
}
@Override
public void actionPerformed(ActionEvent e) {
int i = Integer.parseInt(field1.getText());
int i2 = Integer.parseInt(field2.getText());
field3.setText(""+(i+i2));
field1.setText("");
field2.setText("");
}
}
public class 计算器2 {
public static void main(String[] args) {
new jisuanqi2().loadframe();
}
}
class jisuanqi2 extends Frame{
TextField field1,field2,field3;
public void loadframe() {
field1 = new TextField(5);
field2 = new TextField(5);
field3 = new TextField(10);
Button button = new Button("=");
Label label = new Label("+");
button.addActionListener(new jisuanqijiantinglei(this));
add(field1);
add(label);
add(field2);
add(button);
add(field3);
setLayout(new FlowLayout());
setVisible(true);
pack();
close(this);
}
static void close(Frame frame){
frame.addWindowListener(new WindowAdapter() {
@Override
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
}
}
class jisuanqijiantinglei implements ActionListener{
jisuanqi2 xiaojisuanqi=null;
TextField field1,field2,field3;
public jisuanqijiantinglei(jisuanqi2 xiaojisuanqi){
this.xiaojisuanqi=xiaojisuanqi;
}
@Override
public void actionPerformed(ActionEvent e) {
int i = Integer.parseInt(xiaojisuanqi.field1.getText());
int i1 = Integer.parseInt(xiaojisuanqi.field2.getText());
xiaojisuanqi.field3.setText(""+(i+i1));
xiaojisuanqi.field1.setText("");
xiaojisuanqi.field2.setText("");
}
}
public class 计算器3 {
public static void main(String[] args) {
new jisuanqi3().loadframe();
}
}
class jisuanqi3 extends Frame {
TextField field1,field2,field3;
public void loadframe() {
field1 = new TextField(5);
field2 = new TextField(5);
field3 = new TextField(10);
Button button = new Button("=");
Label label = new Label("+");
button.addActionListener(new jisuanqijiantinglei3());
add(field1);
add(label);
add(field2);
add(button);
add(field3);
setLayout(new FlowLayout());
setVisible(true);
pack();
close(this);
}
static void close(Frame frame){
frame.addWindowListener(new WindowAdapter() {
@Override
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
}
public class jisuanqijiantinglei3 implements ActionListener {
@Override
public void actionPerformed(ActionEvent e) {
int i = Integer.parseInt(field1.getText());
int i1 = Integer.parseInt(field2.getText());
field3.setText(""+(i+i1));
field1.setText("");
field2.setText("");
}
}
}