Java Swing 计算器程序开发实验

实验要求

编写一个应用程序,有一个标题为'计算'的窗口,窗口的布局为 FlowLayout 布局。

设计四个按钮,分别命名为'加'、'差'、'积'、'除';

另外,窗口中还有三个文本框。单击相应的按钮,将两个文本框的数字做运算,在第三个文本框中显示结果内容:

实验思路

  1. 创建一个 JFrame 窗口,设置标题为'计算',并设置布局为 FlowLayout 布局。
  2. 创建三个 JTextField 文本框,用于输入数字和显示结果。
  3. 创建四个 JButton 按钮,分别命名为'加'、'差'、'积'、'除',并添加点击事件。
  4. 在点击事件中,获取两个输入框中的数字,进行相应的运算,并将结果显示在第三个文本框中。

实验步骤

  1. 创建一个名为 Calculator 的 Java 类,并继承 JFrame 类。
  2. 在 Calculator 类中定义三个 JTextField 文本框和四个 JButton 按钮。
  3. 在 Calculator 类中添加一个构造方法,设置窗口标题为'计算',并将布局设置为 FlowLayout 布局。
  4. 在构造方法中,创建并添加三个文本框和四个按钮,并为按钮添加点击事件。
  5. 在点击事件中获取两个输入框中的数字,进行相应的运算,并将结果显示在第三个文本框中。

实验代码

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

public class Calculator extends JFrame implements ActionListener {
    JTextField num1, num2, result;
    JButton add, subtract, multiply, divide;

    public Calculator() {
        super("计算");
        setLayout(new FlowLayout());

        num1 = new JTextField(10);
        num2 = new JTextField(10);
        result = new JTextField(10);
        result.setEditable(false);

        add = new JButton("加");
        subtract = new JButton("差");
        multiply = new JButton("积");
        divide = new JButton("除");

        add(num1);
        add(num2);
        add(result);
        add(add);
        add(subtract);
        add(multiply);
        add(divide);

        add.addActionListener(this);
        subtract.addActionListener(this);
        multiply.addActionListener(this);
        divide.addActionListener(this);

        setSize(300, 150);
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setVisible(true);
    }

    @Override
    public void actionPerformed(ActionEvent e) {
        double num1Value = Double.parseDouble(num1.getText());
        double num2Value = Double.parseDouble(num2.getText());
        double resultValue = 0;

        if (e.getSource() == add) {
            resultValue = num1Value + num2Value;
        } else if (e.getSource() == subtract) {
            resultValue = num1Value - num2Value;
        } else if (e.getSource() == multiply) {
            resultValue = num1Value * num2Value;
        } else if (e.getSource() == divide) {
            if (num2Value == 0) {
                result.setText("除数不能为零");
                return;
            }
            resultValue = num1Value / num2Value;
        }

        result.setText(String.valueOf(resultValue));
    }

    public static void main(String[] args) {
        new Calculator();
    }
}
Java Swing 计算器程序开发实验

原文地址: https://www.cveoy.top/t/topic/oMuu 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录