packageswing;/*** @Author liguo
* @Description 设计4个按钮,分别命名为“加”、“减”、“乘”、“除”,另外,窗口中还有3个文本框。
* 单击相应的按钮,将两个文本框的数字做运算,在第三个文本框中显示结果。要求处理NumberFormatException异常。
* @Data 2018-06-29 20:34*/
importjava.awt.Color;importjava.awt.FlowLayout;importjava.awt.event.ActionEvent;importjava.awt.event.ActionListener;importjavax.swing.JButton;importjavax.swing.JFrame;importjavax.swing.JLabel;importjavax.swing.JTextField;public class Caculate extends JFrame implementsActionListener {
JButton jia;
JButton jian;
JButton cheng;
JButton chu;
JTextField one;
JTextField two;
JTextField three;
JLabel label;publicCaculate() {
init();
setVisible(true);
setResizable(true);
validate();
setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
}public voidinit() {
setLayout(newFlowLayout());
setSize(300, 320);
setTitle("计算");
jia= new JButton("加");
jian= new JButton("减");
cheng= new JButton("乘");
chu= new JButton("除");
one= new JTextField(10);
two= new JTextField(10);
three= new JTextField(10);
label= new JLabel(" ", JLabel.CENTER);
label.setBackground(Color.green);
add(one);
add(label);
add(two);
add(three);
add(jia);
add(jian);
add(cheng);
add(chu);
jia.addActionListener(this);
jian.addActionListener(this);
cheng.addActionListener(this);
chu.addActionListener(this);
}
@Overridepublic voidactionPerformed(ActionEvent e) {doublen;if (e.getSource() ==jia) {doublen1, n2;try{
n1=Double.parseDouble(one.getText());
n2=Double.parseDouble(two.getText());
n= n1 +n2;
three.setText(String.valueOf(n));
label.setText("+");
}catch(NumberFormatException ee) {
three.setText("请输入数字字符");
}
}else if (e.getSource() ==jian) {doublen1, n2;try{
n1=Double.parseDouble(one.getText());
n2=Double.parseDouble(two.getText());
n= n1 -n2;
three.setText(String.valueOf(n));
label.setText("-");
}catch(NumberFormatException ee) {
three.setText("请输入数字字符");
}
}else if (e.getSource() ==cheng) {doublen1, n2;try{
n1=Double.parseDouble(one.getText());
n2=Double.parseDouble(two.getText());
n= n1 *n2;
three.setText(String.valueOf(n));
label.setText("*");
}catch(NumberFormatException ee) {
three.setText("请输入数字字符");
}
}else if (e.getSource() ==chu) {doublen1, n2;try{
n1=Double.parseDouble(one.getText());
n2=Double.parseDouble(two.getText());
n= n1 /n2;
three.setText(String.valueOf(n));
label.setText("/");
}catch(NumberFormatException ee) {
three.setText("请输入数字字符");
}
}
validate();
}public static voidmain(String[] args) {
Caculate test= newCaculate();
}
}