import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
public class a1 extends JFrame implements ActionListener
{
JTextField jtextfield1,jtextfield2,jtextfield3;
JLabel jlabe11,jlabe12,jlabe13;
JButton jbt1,jbt2,jbt3,jbt4;
Container cp=getContentPane();
public a1(){
setTitle("一个文本行事件处理的例子");
cp.setLayout(new FlowLayout());
jlabe11=new JLabel("左操作数=");
jtextfield1=new JTextField(20);
jlabe12=new JLabel("右操作数=");
jtextfield2=new JTextField(20);
jbt1=new JButton("+");
jbt2=new JButton("-");
jbt3=new JButton("*");
jbt4=new JButton("/");
jlabe13=new JLabel("=");
jtextfield3=new JTextField(20);
cp.add(jlabe11); cp.add(jtextfield1);
cp.add(jlabe12); cp.add(jtextfield2);
cp.add(jbt1);
jbt1.addActionListener(this);
cp.add(jbt2);
jbt2.addActionListener(this);
cp.add(jbt3);
jbt3.addActionListener(this);
cp.add(jbt4);
jbt4.addActionListener(this);
cp.add(jlabe13); cp.add(jtextfield3);
jtextfield2.addActionListener(this);
setSize(350,150);
show();
}
public void actionPerformed(ActionEvent e){
long n1,n2;
if (e.getSource( )==jtextfield2){
n1=Long.parseLong(jtextfield1.getText());
n2=Long.parseLong(jtextfield2.getText());
long str=0;
if (e.getSource( )==jbt1) str=n1+n2;
else if (e.getSource( )==jbt2) str=n1-n2;
else if (e.getSource( )==jbt3) str=n1*n2;
else if (e.getSource( )==jbt4) str=n1/n2;
jtextfield3.setText(String.valueOf(str));
}
}
public static void main(String args[]){
a1 obj=new a1();
}
}
------解决方案--------------------
你事件处理到哪去了;
将
if (e.getSource() == jtextfield2)
if (e.getSource() == jbt1)
------解决方案--------------------
你多加几个判断就可以了;