用java swing组件实现一个简单的计算器
时间: 2023-04-08 07:04:56 浏览: 98
好的,我可以回答这个问题。使用Java Swing组件可以很容易地实现一个简单的计算器。您可以使用JFrame作为主窗口,然后添加JPanel和JButton等组件来实现计算器的各个功能。您可以使用ActionListener来处理按钮的点击事件,并使用JTextField来显示计算结果。如果您需要更详细的信息,可以参考Java Swing的官方文档或在线教程。
相关问题
用java swing组件实现一个简单的计算器,写出代码
好的,我可以回答这个问题。以下是一个简单的Java Swing计算器的代码示例:
```java
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class Calculator extends JFrame implements ActionListener {
private JTextField textField;
private JButton[] buttons;
private String[] buttonLabels = {"7", "8", "9", "/", "4", "5", "6", "*", "1", "2", "3", "-", "0", ".", "=", "+"};
private double num1, num2, result;
private String operator;
public Calculator() {
setTitle("Calculator");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setResizable(false);
textField = new JTextField(20);
textField.setEditable(false);
textField.setHorizontalAlignment(JTextField.RIGHT);
JPanel buttonPanel = new JPanel();
buttonPanel.setLayout(new GridLayout(4, 4));
buttons = new JButton[16];
for (int i = 0; i < 16; i++) {
buttons[i] = new JButton(buttonLabels[i]);
buttons[i].addActionListener(this);
buttonPanel.add(buttons[i]);
}
getContentPane().add(textField, BorderLayout.NORTH);
getContentPane().add(buttonPanel, BorderLayout.CENTER);
pack();
setLocationRelativeTo(null);
setVisible(true);
}
public void actionPerformed(ActionEvent e) {
String label = e.getActionCommand();
if (label.equals("C")) {
textField.setText("");
} else if (label.equals("+/-")) {
double value = Double.parseDouble(textField.getText());
value = -value;
textField.setText(Double.toString(value));
} else if (label.equals("%")) {
double value = Double.parseDouble(textField.getText());
value = value / 100;
textField.setText(Double.toString(value));
} else if (label.equals("/") || label.equals("*") || label.equals("-") || label.equals("+")) {
num1 = Double.parseDouble(textField.getText());
operator = label;
textField.setText("");
} else if (label.equals("=")) {
num2 = Double.parseDouble(textField.getText());
if (operator.equals("/")) {
result = num1 / num2;
} else if (operator.equals("*")) {
result = num1 * num2;
} else if (operator.equals("-")) {
result = num1 - num2;
} else if (operator.equals("+")) {
result = num1 + num2;
}
textField.setText(Double.toString(result));
} else {
textField.setText(textField.getText() + label);
}
}
public static void main(String[] args) {
new Calculator();
}
}
```
这个计算器使用了Java Swing组件来创建一个简单的GUI界面。它包括一个文本框和16个按钮,可以进行基本的加、减、乘、除、百分比和正负号计算。
用java swing写一个计算器
好的,我可以帮您指导如何用 Java Swing 编写一个简单的计算器。
首先,您需要创建一个 GUI 界面来显示计算器。您可以使用 JFrame 来创建窗口,使用 JLabel 来显示结果,以及使用 JButton 来添加数字和操作符按钮。
以下是一个简单的代码片段,可以创建窗口并添加两个按钮:
```
import javax.swing.*;
public class Calculator {
public static void main(String[] args) {
JFrame frame = new JFrame("Calculator");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(300, 300);
JButton button1 = new JButton("Button 1");
JButton button2 = new JButton("Button 2");
frame.getContentPane().add(button1);
frame.getContentPane().add(button2);
frame.pack();
frame.setVisible(true);
}
}
```
这将创建一个名为 "Calculator" 的窗口,并添加两个按钮 "Button 1" 和 "Button 2"。您可以在类似的方式下添加更多的按钮以及其他组件。
接下来,您需要编写处理按钮点击的代码。当用户点击数字按钮时,您需要更新显示结果的标签。当用户点击操作符按钮时,您需要执行相应的计算并更新标签上的值。
以下是一个简单的代码片段,可以处理数字按钮的点击事件:
```
button1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
// Get the current text of the label and append the clicked digit
String currentText = label.getText();
String clickedDigit = "1"; // Replace with the actual digit that was clicked
label.setText(currentText + clickedDigit);
}
});
```
此代码使用 addActionListener() 方法为按钮添加 ActionListener,当用户点击按钮时将调用 actionPerformed() 方法。此方法将获取标签的当前文本内容,并将点击的数字附加到文本的末尾,然后将更新标签的文本。
您可以在类似的方式下编写代码,以处理操作符按钮的点击事件,并执行所需的计算。
希望这可以帮助您开始编写一个简单的计算器!