使用JAVA代码做出计算器的图形界面
时间: 2023-11-27 08:51:46 浏览: 36
以下是一个简单的计算器图形界面的JAVA代码实现:
```java
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class Calculator extends JFrame implements ActionListener {
private JTextField textField; //显示计算结果的文本框
private double num1 = 0, num2 = 0, result = 0; //计算所需的三个数
private String operator = ""; //计算所需的运算符
public Calculator() {
setTitle("Calculator"); //设置窗口标题
setSize(300, 300); //设置窗口大小
setLocationRelativeTo(null); //居中显示
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //关闭窗口时结束程序
//创建面板并设置布局
JPanel panel = new JPanel();
panel.setLayout(new GridLayout(4, 4, 5, 5)); //4行4列,间隔为5像素
//创建按钮并添加到面板
String[] buttonTexts = {"7", "8", "9", "/", "4", "5", "6", "*", "1", "2", "3", "-", "C", "0", "=", "+"}; //按钮上的文字
for (int i = 0; i < buttonTexts.length; i++) {
JButton button = new JButton(buttonTexts[i]);
button.addActionListener(this);
panel.add(button);
}
//创建文本框并添加到窗口
textField = new JTextField();
textField.setEditable(false); //禁止编辑
add(textField, BorderLayout.NORTH);
//将面板添加到窗口
add(panel, BorderLayout.CENTER);
setVisible(true); //显示窗口
}
//按钮点击事件
public void actionPerformed(ActionEvent e) {
String buttonText = e.getActionCommand(); //获取按钮上的文字
if (buttonText.equals("C")) { //清除
num1 = num2 = result = 0;
operator = "";
textField.setText("");
} else if (buttonText.equals("+") || buttonText.equals("-") || buttonText.equals("*") || buttonText.equals("/")) { //运算符
num1 = Double.parseDouble(textField.getText());
operator = buttonText;
textField.setText("");
} else if (buttonText.equals("=")) { //等于号
num2 = Double.parseDouble(textField.getText());
switch (operator) {
case "+":
result = num1 + num2;
break;
case "-":
result = num1 - num2;
break;
case "*":
result = num1 * num2;
break;
case "/":
result = num1 / num2;
break;
}
textField.setText(Double.toString(result));
} else { //数字
textField.setText(textField.getText() + buttonText);
}
}
public static void main(String[] args) {
new Calculator();
}
}
```
运行以上代码,即可看到一个简单的计算器图形界面。