在java程序中图形计算器的实现的代码
时间: 2024-10-25 15:05:08 浏览: 11
java实现计算器图形界面源代码(包含详细注释说明)
在Java中实现一个简单的图形计算器,比如支持基本算术运算如加减乘除的小部件,可以分为以下几个步骤:
1. **创建界面**:
使用Java Swing库构建用户界面,包括输入框、按钮以及结果显示区域。
```java
import javax.swing.*;
import java.awt.*;
public class Calculator extends JFrame {
private JTextField inputField;
private JButton addButton, subtractButton, multiplyButton, divideButton;
private JLabel resultLabel;
public Calculator() {
// 界面布局设置
}
}
```
2. **事件监听**:
给每个操作按钮添加点击事件处理,计算结果并更新显示。
```java
addButton.addActionListener(e -> calculate("+", inputField.getText()));
subtractButton.addActionListener(e -> calculate("-", inputField.getText()));
// ...其他按钮类似
private void calculate(String operator, String number) {
try {
double num1 = Double.parseDouble(inputField.getText());
double num2 = Double.parseDouble(number);
double result = performOperation(num1, num2, operator);
resultLabel.setText("Result: " + result);
} catch (NumberFormatException nfe) {
resultLabel.setText("Invalid input");
}
}
private double performOperation(double num1, double num2, String operator) {
switch (operator) {
case "+":
return num1 + num2;
case "-":
return num1 - num2;
case "*":
return num1 * num2;
case "/":
if (num2 != 0)
return num1 / num2;
else
throw new IllegalArgumentException("Division by zero is not allowed.");
default:
throw new IllegalArgumentException("Unknown operator");
}
}
```
3. **初始化框架**:
设置窗口大小、标题,以及关闭操作等。
```java
@Override
public void setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setMinimumSize(new Dimension(250, 150));
pack();
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setVisible(true);
```
阅读全文