用Java代码写在界面的基础上添加点击计算的功能和退出的功能。
时间: 2024-05-02 16:21:13 浏览: 33
假设已经有了一个Java界面,包含了一个计算按钮和一个退出按钮,那么可以在计算按钮的点击事件中添加计算功能,在退出按钮的点击事件中添加退出功能。
以下是示例代码:
```java
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class MyFrame extends JFrame implements ActionListener {
private JTextField textField1, textField2, resultField;
private JButton calculateButton, exitButton;
public MyFrame() {
super("My Calculator");
// 设置布局
setLayout(new GridLayout(4, 2));
// 创建组件
JLabel label1 = new JLabel("Operand 1:");
textField1 = new JTextField(10);
JLabel label2 = new JLabel("Operand 2:");
textField2 = new JTextField(10);
JLabel label3 = new JLabel("Result:");
resultField = new JTextField(10);
resultField.setEditable(false);
calculateButton = new JButton("Calculate");
exitButton = new JButton("Exit");
// 添加组件
add(label1);
add(textField1);
add(label2);
add(textField2);
add(label3);
add(resultField);
add(calculateButton);
add(exitButton);
// 添加事件监听器
calculateButton.addActionListener(this);
exitButton.addActionListener(this);
// 设置窗口属性
setSize(300, 150);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setVisible(true);
}
@Override
public void actionPerformed(ActionEvent e) {
if (e.getSource() == calculateButton) {
// 计算按钮被点击
try {
double operand1 = Double.parseDouble(textField1.getText());
double operand2 = Double.parseDouble(textField2.getText());
double result = operand1 + operand2; // 这里只是一个简单的示例,可以替换为其他计算逻辑
resultField.setText(String.valueOf(result));
} catch (NumberFormatException ex) {
resultField.setText("Invalid input!");
}
} else if (e.getSource() == exitButton) {
// 退出按钮被点击
System.exit(0);
}
}
public static void main(String[] args) {
new MyFrame();
}
}
```
在这个示例代码中,我们实现了`ActionListener`接口,重写了`actionPerformed()`方法,在其中判断事件源是哪个按钮,并进行相应的操作。
注意,在`actionPerformed()`方法中执行长时间的计算或IO操作会导致界面卡顿,建议将这些操作放到单独的线程中执行,避免阻塞界面线程。
阅读全文