java图形页面计算器
时间: 2023-10-17 19:10:05 浏览: 44
以下是一个简单的 Java 图形页面计算器的示例代码:
```java
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class Calculator extends JFrame implements ActionListener {
private JTextField textField;
private JButton addButton, subtractButton, multiplyButton, divideButton, equalsButton, clearButton;
private JPanel buttonPanel;
private double firstNumber = 0.0;
private double secondNumber = 0.0;
private String operator = "";
public Calculator() {
super("Calculator");
// Create text field
textField = new JTextField(20);
textField.setEditable(false);
// Create buttons
addButton = new JButton("+");
subtractButton = new JButton("-");
multiplyButton = new JButton("*");
divideButton = new JButton("/");
equalsButton = new JButton("=");
clearButton = new JButton("C");
// Add action listeners to buttons
addButton.addActionListener(this);
subtractButton.addActionListener(this);
multiplyButton.addActionListener(this);
divideButton.addActionListener(this);
equalsButton.addActionListener(this);
clearButton.addActionListener(this);
// Add buttons to panel
buttonPanel = new JPanel();
buttonPanel.setLayout(new GridLayout(4,2));
buttonPanel.add(addButton);
buttonPanel.add(subtractButton);
buttonPanel.add(multiplyButton);
buttonPanel.add(divideButton);
buttonPanel.add(equalsButton);
buttonPanel.add(clearButton);
// Add components to frame
add(textField, BorderLayout.NORTH);
add(buttonPanel, BorderLayout.CENTER);
// Set frame properties
setSize(300, 200);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setVisible(true);
}
public void actionPerformed(ActionEvent event) {
String buttonText = event.getActionCommand();
if(buttonText.equals("+")) {
operator = "+";
firstNumber = Double.parseDouble(textField.getText());
textField.setText("");
} else if(buttonText.equals("-")) {
operator = "-";
firstNumber = Double.parseDouble(textField.getText());
textField.setText("");
} else if(buttonText.equals("*")) {
operator = "*";
firstNumber = Double.parseDouble(textField.getText());
textField.setText("");
} else if(buttonText.equals("/")) {
operator = "/";
firstNumber = Double.parseDouble(textField.getText());
textField.setText("");
} else if(buttonText.equals("=")) {
secondNumber = Double.parseDouble(textField.getText());
if(operator.equals("+")) {
textField.setText(Double.toString(firstNumber + secondNumber));
} else if(operator.equals("-")) {
textField.setText(Double.toString(firstNumber - secondNumber));
} else if(operator.equals("*")) {
textField.setText(Double.toString(firstNumber * secondNumber));
} else if(operator.equals("/")) {
textField.setText(Double.toString(firstNumber / secondNumber));
}
} else if(buttonText.equals("C")) {
textField.setText("");
}
}
public static void main(String[] args) {
new Calculator();
}
}
```
该计算器支持加、减、乘、除四种基本运算,以及清除文本框内容。用户可以通过点击按钮输入数字和运算符,计算结果将显示在文本框中。