编写一个应用程序,有一个标题为“计算”的窗口,窗口的布局为FlowLayout布局。设计四个按钮,分别命名为“加”、“差”、“积、”、“除”,另外,窗口中还有三个文本框。单击相应的按钮,将两个文本框的数字做运算,在第三个文本框中显示结果。 注意:程序要求处理NumberFormatException异常。
时间: 2023-12-25 16:06:13 浏览: 75
好的,我明白了。以下是 Java 代码实现:
```java
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class Calculator extends JFrame implements ActionListener {
private JTextField num1Field, num2Field, resultField;
public Calculator() {
setTitle("计算");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Container contentPane = getContentPane();
contentPane.setLayout(new FlowLayout());
JLabel num1Label = new JLabel("数字1:");
num1Field = new JTextField(10);
contentPane.add(num1Label);
contentPane.add(num1Field);
JLabel num2Label = new JLabel("数字2:");
num2Field = new JTextField(10);
contentPane.add(num2Label);
contentPane.add(num2Field);
JButton addButton = new JButton("加");
addButton.addActionListener(this);
contentPane.add(addButton);
JButton subButton = new JButton("差");
subButton.addActionListener(this);
contentPane.add(subButton);
JButton mulButton = new JButton("积");
mulButton.addActionListener(this);
contentPane.add(mulButton);
JButton divButton = new JButton("除");
divButton.addActionListener(this);
contentPane.add(divButton);
JLabel resultLabel = new JLabel("结果:");
resultField = new JTextField(10);
resultField.setEditable(false);
contentPane.add(resultLabel);
contentPane.add(resultField);
pack();
setVisible(true);
}
public void actionPerformed(ActionEvent e) {
try {
double num1 = Double.parseDouble(num1Field.getText());
double num2 = Double.parseDouble(num2Field.getText());
double result = 0;
String command = e.getActionCommand();
switch (command) {
case "加":
result = num1 + num2;
break;
case "差":
result = num1 - num2;
break;
case "积":
result = num1 * num2;
break;
case "除":
result = num1 / num2;
break;
}
resultField.setText(Double.toString(result));
} catch (NumberFormatException ex) {
JOptionPane.showMessageDialog(this, "请输入数字!", "错误", JOptionPane.ERROR_MESSAGE);
}
}
public static void main(String[] args) {
new Calculator();
}
}
```
这个程序使用了 Java Swing 库,实现了一个简单的计算器窗口。其中,JTextField 用于输入数字,JLabel 用于显示标签,JButton 用于响应按钮事件,JOptionPane 用于显示错误提示框。在 actionPerformed 方法中,根据按钮的命令执行相应的运算,并将结果显示在第三个文本框中。如果输入的内容不是数字,则会弹出错误提示框。
阅读全文