编写一个Java程序,在程序中建立一个窗口,有四个文本框、两个按钮,单击“求和”按钮,能把第一个和第二个文本框的整数相加后结果显示在第三个文本框中,点击“复制”按钮,能将第三个文本框的内容复制到第四个文本框中,最后还可以正常关闭窗口。
要创建一个Java程序,包括一个窗口、四个文本框和两个按钮,以实现求和和复制操作,你可以使用Swing库来构建GUI界面。以下是一个示例程序,它实现了要求:
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class CalculatorApp {
private JTextField textField1, textField2, textField3, textField4;
public CalculatorApp() {
JFrame frame = new JFrame("计算器");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(300, 200);
JPanel panel = new JPanel(new GridLayout(5, 2));
frame.getContentPane().add(panel);
JLabel label1 = new JLabel("第一个整数:");
textField1 = new JTextField();
JLabel label2 = new JLabel("第二个整数:");
textField2 = new JTextField();
JLabel label3 = new JLabel("求和结果:");
textField3 = new JTextField();
JLabel label4 = new JLabel("复制结果:");
textField4 = new JTextField();
JButton sumButton = new JButton("求和");
JButton copyButton = new JButton("复制");
panel.add(label1);
panel.add(textField1);
panel.add(label2);
panel.add(textField2);
panel.add(label3);
panel.add(textField3);
panel.add(label4);
panel.add(textField4);
panel.add(sumButton);
panel.add(copyButton);
sumButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
try {
int num1 = Integer.parseInt(textField1.getText());
int num2 = Integer.parseInt(textField2.getText());
int sum = num1 + num2;
textField3.setText(Integer.toString(sum));
} catch (NumberFormatException ex) {
JOptionPane.showMessageDialog(frame, "请输入有效的整数", "错误", JOptionPane.ERROR_MESSAGE);
}
}
});
copyButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
textField4.setText(textField3.getText());
}
});
frame.setVisible(true);
}
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
public void run() {
new CalculatorApp();
}
});
}
}
这个程序创建了一个包含四个文本框、两个按钮和标签的窗口,用户可以在第一个和第二个文本框中输入整数,然后点击“求和”按钮来计算和,结果将显示在第三个文本框中。用户还可以点击“复制”按钮将结果复制到第四个文本框中。如果输入无效的整数,程序会弹出一个错误消息框。最后,用户可以正常关闭窗口。 运行结果: