当只输入 一个操作数的时候 重置 失效
需要输入两个操作数 才可以
不明白 所以……
谢谢%
import java.awt.*;
import java.awt.event.*;
public class keke extends Frame implements ActionListener
{ Button a1,a2,a3,a4,a5;
TextField text1,text2,text3;
Double a,b;
Frame f1;
keke()
{f1=new Frame("简单计算器");
f1.setSize(200,200);
f1.setVisible(true); Panel pan=new Panel();
pan.setBackground(Color.cyan);
Panel pan2=new Panel();
pan2.setBackground(Color.blue); setLayout(new BorderLayout());
f1.add("Center",pan);
f1.add("East",pan2);
Label la=new Label("操作数");
text1=new TextField(5);
text1.getText();
Label lb=new Label("操作数");
text2=new TextField(5);
text2.getText();
Label lc=new Label("结果");
text3=new TextField(5);
// text3.setEditable(false);
a1=new Button ("+");
a2=new Button ("-");
a3=new Button ("*");
a4=new Button ("/");
a5=new Button ("重置");
pan.setLayout(new GridLayout(3,2));
pan.add(la);
pan.add(text1);
pan.add(lb);
pan.add(text2);
pan.add(lc);
pan.add(text3);
pan2.setLayout(new GridLayout(5,1));
pan2.add(a1);
pan2.add(a2);
pan2.add(a3);
pan2.add(a4);
pan2.add(a5); a1.addActionListener(this);
a2.addActionListener(this);
a3.addActionListener(this);
a4.addActionListener(this);
a5.addActionListener(this);
pack();
}
public void actionPerformed(ActionEvent e){
a=Double.valueOf(text1.getText()).doubleValue();
b=Double.valueOf(text2.getText()).doubleValue();
if(e.getSource()==a1)
{text3.setText(String.valueOf(a+b));}
if(e.getSource()==a2)
{text3.setText(String.valueOf(a-b));}
if(e.getSource()==a3)
{text3.setText(String.valueOf(a*b));}
if(e.getSource()==a4)
{text3.setText(String.valueOf(a/b));}
if(e.getSource()==a5)
{
text1.setText("");
text2.setText("");
text3.setText(""); }
}public static void main(String args[])
{new keke();}}
需要输入两个操作数 才可以
不明白 所以……
谢谢%
import java.awt.*;
import java.awt.event.*;
public class keke extends Frame implements ActionListener
{ Button a1,a2,a3,a4,a5;
TextField text1,text2,text3;
Double a,b;
Frame f1;
keke()
{f1=new Frame("简单计算器");
f1.setSize(200,200);
f1.setVisible(true); Panel pan=new Panel();
pan.setBackground(Color.cyan);
Panel pan2=new Panel();
pan2.setBackground(Color.blue); setLayout(new BorderLayout());
f1.add("Center",pan);
f1.add("East",pan2);
Label la=new Label("操作数");
text1=new TextField(5);
text1.getText();
Label lb=new Label("操作数");
text2=new TextField(5);
text2.getText();
Label lc=new Label("结果");
text3=new TextField(5);
// text3.setEditable(false);
a1=new Button ("+");
a2=new Button ("-");
a3=new Button ("*");
a4=new Button ("/");
a5=new Button ("重置");
pan.setLayout(new GridLayout(3,2));
pan.add(la);
pan.add(text1);
pan.add(lb);
pan.add(text2);
pan.add(lc);
pan.add(text3);
pan2.setLayout(new GridLayout(5,1));
pan2.add(a1);
pan2.add(a2);
pan2.add(a3);
pan2.add(a4);
pan2.add(a5); a1.addActionListener(this);
a2.addActionListener(this);
a3.addActionListener(this);
a4.addActionListener(this);
a5.addActionListener(this);
pack();
}
public void actionPerformed(ActionEvent e){
a=Double.valueOf(text1.getText()).doubleValue();
b=Double.valueOf(text2.getText()).doubleValue();
if(e.getSource()==a1)
{text3.setText(String.valueOf(a+b));}
if(e.getSource()==a2)
{text3.setText(String.valueOf(a-b));}
if(e.getSource()==a3)
{text3.setText(String.valueOf(a*b));}
if(e.getSource()==a4)
{text3.setText(String.valueOf(a/b));}
if(e.getSource()==a5)
{
text1.setText("");
text2.setText("");
text3.setText(""); }
}public static void main(String args[])
{new keke();}}
import java.awt.BorderLayout;
import java.awt.Button;
import java.awt.Color;
import java.awt.Frame;
import java.awt.GridLayout;
import java.awt.Label;
import java.awt.Panel;
import java.awt.TextField;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;public class keke extends Frame implements ActionListener
{ Button a1, a2, a3, a4, a5;
TextField text1, text2, text3;
Double a, b;
Frame f1; keke()
{ f1 = new Frame("简单计算器");
f1.setSize(200, 200);
f1.setVisible(true); Panel pan = new Panel();
pan.setBackground(Color.cyan); Panel pan2 = new Panel();
pan2.setBackground(Color.blue); setLayout(new BorderLayout());
f1.add("Center", pan);
f1.add("East", pan2); Label la = new Label("操作数");
text1 = new TextField(5);
text1.getText();
Label lb = new Label("操作数");
text2 = new TextField(5);
text2.getText();
Label lc = new Label("结果");
text3 = new TextField(5);
// text3.setEditable(false);
a1 = new Button("+");
a2 = new Button("-");
a3 = new Button("*");
a4 = new Button("/");
a5 = new Button("重置"); pan.setLayout(new GridLayout(3, 2));
pan.add(la);
pan.add(text1);
pan.add(lb);
pan.add(text2);
pan.add(lc);
pan.add(text3);
pan2.setLayout(new GridLayout(5, 1));
pan2.add(a1);
pan2.add(a2);
pan2.add(a3);
pan2.add(a4);
pan2.add(a5); a1.addActionListener(this);
a2.addActionListener(this);
a3.addActionListener(this);
a4.addActionListener(this);
a5.addActionListener(this); pack(); } public void actionPerformed(ActionEvent e) {
if(!(text1.getText().trim().equals("") && text2.getText().trim().equals("")))
{
a = Double.valueOf(text1.getText()).doubleValue();
b = Double.valueOf(text2.getText()).doubleValue(); if (e.getSource() == a1)
{
text3.setText(String.valueOf(a + b));
}
if (e.getSource() == a2)
{
text3.setText(String.valueOf(a - b));
}
if (e.getSource() == a3)
{
text3.setText(String.valueOf(a * b));
}
if (e.getSource() == a4)
{
text3.setText(String.valueOf(a / b));
}
if (e.getSource() == a5)
{
text1.setText("");
text2.setText("");
text3.setText("");
} }
} public static void main(String args[])
{ new keke(); }}
text1.setText("");
text2.setText("");
text3.setText("");
}
if(!(text1.getText().trim().equals("") && text2.getText().trim().equals(""))){
try{
a = Double.valueOf(text1.getText()).doubleValue();
b = Double.valueOf(text2.getText()).doubleValue();
if (e.getSource() == a1){
text3.setText(String.valueOf(a + b));
}else if (e.getSource() == a2){
text3.setText(String.valueOf(a - b));
}else if (e.getSource() == a3){
text3.setText(String.valueOf(a * b));
}else if (e.getSource() == a4){
text3.setText(String.valueOf(a / b));
}
}catch(Exception ee){
text3.setText("请输入正确的数字!");
}
}
}这样试试看吧
感觉不错的:
import java.awt.*;
import java.awt.event.*;
public class keke extends Frame implements ActionListener
{ Button a1, a2, a3, a4, a5,a6;
TextField text1, text2, text3;
Double a, b;
keke()
{ super("简单计算器");
setSize(200, 200);
setVisible(true); Panel pan = new Panel();
pan.setBackground(Color.cyan); Panel pan2 = new Panel();
pan2.setBackground(Color.blue); setLayout(new BorderLayout());
add("Center", pan);
add("East", pan2); Label la = new Label("操作数");
text1 = new TextField(5);
Label lb = new Label("操作数");
text2 = new TextField(5);
Label lc = new Label("结果");
text3 = new TextField(5);
// text3.setEditable(false);
a1 = new Button("+");
a2 = new Button("-");
a3 = new Button("*");
a4 = new Button("/");
a5 = new Button("重置");
a6 = new Button("退出"); pan.setLayout(new GridLayout(3, 2));
pan.add(la);
pan.add(text1);
pan.add(lb);
pan.add(text2);
pan.add(lc);
pan.add(text3);
pan2.setLayout(new GridLayout(3, 2));
pan2.add(a1);
pan2.add(a2);
pan2.add(a3);
pan2.add(a4);
pan2.add(a5);
pan2.add(a6); a1.addActionListener(this);
a2.addActionListener(this);
a3.addActionListener(this);
a4.addActionListener(this);
a5.addActionListener(this);
a6.addActionListener(this);
addWindowListener(new WindowCloser()); pack(); } public void actionPerformed(ActionEvent e) {
if (e.getSource() == a1)
{ a = Double.valueOf(text1.getText()).doubleValue();
b = Double.valueOf(text2.getText()).doubleValue();
text3.setText(String.valueOf(a + b));
}
if (e.getSource() == a2)
{ a = Double.valueOf(text1.getText()).doubleValue();
b = Double.valueOf(text2.getText()).doubleValue();
text3.setText(String.valueOf(a - b));
}
if (e.getSource() == a3)
{ a = Double.valueOf(text1.getText()).doubleValue();
b = Double.valueOf(text2.getText()).doubleValue();
text3.setText(String.valueOf(a * b));
}
if (e.getSource() == a4)
{ a = Double.valueOf(text1.getText()).doubleValue();
b = Double.valueOf(text2.getText()).doubleValue();
text3.setText(String.valueOf(a / b));
} if (e.getSource() == a5)
{
text1.setText("");
text2.setText("");
text3.setText("");
}
if (e.getSource() == a6)
{ System.exit(0); }
}
private class WindowCloser extends WindowAdapter
{
public void windowClosing(WindowEvent e)
{
System.exit(0);
}
} public static void main(String args[])
{ new keke(); }}