问题:
使用Java的Swing库,编写一个简单的图形用户界面(GUI)程序,如一个计算器或一个简单的绘图程序。
解答思路:
下面是一个使用Java Swing库编写的简单计算器程序的示例。该程序允许用户输入两个数字并选择一个操作(加、减、乘、除),然后显示结果。
import javax.swing.*;import java.awt.*;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;public class SimpleCalculator extends JFrame {private JTextField firstNumberField;private JTextField secondNumberField;private JButton addButton;private JButton subtractButton;private JButton multiplyButton;private JButton divideButton;private JLabel resultLabel;public SimpleCalculator() {// 设置窗口标题setTitle("Simple Calculator");// 设置窗口大小setSize(300, 200);// 设置关闭操作setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);// 设置布局管理器setLayout(new FlowLayout());// 创建文本输入框firstNumberField = new JTextField(5);secondNumberField = new JTextField(5);// 创建按钮addButton = new JButton("+");subtractButton = new JButton("-");multiplyButton = new JButton("*");divideButton = new JButton("/");// 创建标签resultLabel = new JLabel("Result: ");// 添加组件到窗口add(firstNumberField);add(secondNumberField);add(addButton);add(subtractButton);add(multiplyButton);add(divideButton);add(resultLabel);// 添加事件监听器addButton.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {performOperation(Operation.ADD);}});subtractButton.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {performOperation(Operation.SUBTRACT);}});multiplyButton.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {performOperation(Operation.MULTIPLY);}});divideButton.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {performOperation(Operation.DIVIDE);}});}private void performOperation(Operation operation) {try {double firstNumber = Double.parseDouble(firstNumberField.getText());double secondNumber = Double.parseDouble(secondNumberField.getText());double result = 0;switch (operation) {case ADD:result = firstNumber + secondNumber;break;case SUBTRACT:result = firstNumber - secondNumber;break;case MULTIPLY:result = firstNumber * secondNumber;break;case DIVIDE:if (secondNumber != 0) {result = firstNumber / secondNumber;} else {resultLabel.setText("Error: Division by zero!");return;}break;}resultLabel.setText("Result: " + result);} catch (NumberFormatException e) {resultLabel.setText("Error: Invalid input!");}}enum Operation {ADD, SUBTRACT, MULTIPLY, DIVIDE}public static void main(String[] args) {// 在事件调度线程中运行GUISwingUtilities.invokeLater(new Runnable() {@Overridepublic void run() {// 创建并显示窗口new SimpleCalculator().setVisible(true);}});}}
这个程序创建了一个简单的计算器GUI,其中包括两个文本字段用于输入数字,四个按钮分别代表加、减、乘、除操作,以及一个标签用于显示结果。
要运行此程序,请按照以下步骤操作:
1. 将上述代码保存到一个名为'SimpleCalculator.java'的文件中。
2. 使用Java编译器编译该文件:'javac SimpleCalculator.java'。
3. 运行编译后的类:'java SimpleCalculator'。
程序将启动一个窗口,允许用户输入两个数字并选择一个操作来得到结果。
(文章为作者在学习java过程中的一些个人体会总结和借鉴,如有不当、错误的地方,请各位大佬批评指正,定当努力改正,如有侵权请联系作者删帖。)