import java.awt.*;
import java.awt.event.*;
public class TFMath{
public static void main(String[]args){
new MyAdder().launchFrame();
}
}
class MyAdder extends Frame{
TextField num1,num2,num3;
public void launchFrame(){
num1=new TextField(10);//10个字节
num2=new TextField(10);
num3=new TextField(15);
Label plusLabel=new Label("+");
Button btEquals=new Button("=");
btEquals.addActionListener(new MyMonitor(this));
setLayout(new FlowLayout());
add(num1);
add(plusLabel);
add(num2);
add(btEquals);
add(num3);
pack();
setVisible(true);
}
}
class MyMonitor implements ActionListener{
MyAdder tf=null;
public MyMonitor(MyAdder tf){
this.tf=tf;
}
public void actionPerformed(ActionEvent e){
int n1=Integer.parseInt(tf.num1.getText());//将num1转化为int类型
int n2=Integer.parseInt(tf.num3.getText());
tf.num3.setText(" "+(n1+n2));//报错
//tf.num3.setText((String)(n1+n2));//报错
}
}
![](http://imgsrc.baidu.com/forum/w%3D580/sign=3558f0cccf3d70cf4cfaaa05c8ddd1ba/e96111d5ad6eddc41bbc160e3fdbb6fd53663305.jpg)
错误如图所示,请问如何改进代码?
import java.awt.event.*;
public class TFMath{
public static void main(String[]args){
new MyAdder().launchFrame();
}
}
class MyAdder extends Frame{
TextField num1,num2,num3;
public void launchFrame(){
num1=new TextField(10);//10个字节
num2=new TextField(10);
num3=new TextField(15);
Label plusLabel=new Label("+");
Button btEquals=new Button("=");
btEquals.addActionListener(new MyMonitor(this));
setLayout(new FlowLayout());
add(num1);
add(plusLabel);
add(num2);
add(btEquals);
add(num3);
pack();
setVisible(true);
}
}
class MyMonitor implements ActionListener{
MyAdder tf=null;
public MyMonitor(MyAdder tf){
this.tf=tf;
}
public void actionPerformed(ActionEvent e){
int n1=Integer.parseInt(tf.num1.getText());//将num1转化为int类型
int n2=Integer.parseInt(tf.num3.getText());
tf.num3.setText(" "+(n1+n2));//报错
//tf.num3.setText((String)(n1+n2));//报错
}
}
![](http://imgsrc.baidu.com/forum/w%3D580/sign=3558f0cccf3d70cf4cfaaa05c8ddd1ba/e96111d5ad6eddc41bbc160e3fdbb6fd53663305.jpg)
错误如图所示,请问如何改进代码?