21xrx.com
2024-09-17 03:40:34 Tuesday
登录
文章检索 我的文章 写文章
Java实现简易计算器图形用户界面
2023-06-15 15:18:33 深夜i     --     --
Java 图形用户界面 计算器

Java语言具有面向对象、跨平台、丰富的类库等特点,在图形用户界面方面也有很高的效率和可靠性。本文将介绍如何使用Java语言编写一个简易计算器的图形用户界面程序。

首先,我们需要创建一个Java项目,并引入Java Swing界面组件库。然后创建一个窗口对象,并进行布局设置,将按钮和文本框添加到窗口中。

接着,我们编写计算器的运算逻辑代码,利用Java语言的数学运算API实现加减乘除等简单的运算。我们将编写一个计算器工具类,该类提供加、减、乘、除等方法,方便计算器界面进行调用。

最后,将计算器界面与计算器工具类相结合,实现简单的计算器图形用户界面。用户可以在文本框中输入两个数值,并点击相应按钮进行运算,运算结果将会显示在文本框中。

以下是代码案例:


import javax.swing.*;

import java.awt.event.*;

public class CalculatorUI extends JFrame {

  private JTextArea textArea;

  private JButton addButton, subButton, mulButton, divButton;

  private JTextField inputField1, inputField2;

  public CalculatorUI() {

    setTitle("简易计算器");

    setSize(400, 150);

    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

    setLayout(null);

    inputField1 = new JTextField();

    inputField1.setBounds(20, 20, 100, 30);

    add(inputField1);

    inputField2 = new JTextField();

    inputField2.setBounds(130, 20, 100, 30);

    add(inputField2);

    addButton = new JButton("+");

    addButton.setBounds(20, 60, 50, 30);

    addButton.addActionListener(new ActionListener() {

      public void actionPerformed(ActionEvent e) {

        double result = Calculator.add(Double.parseDouble(inputField1.getText()), Double.parseDouble(inputField2.getText()));

        textArea.setText(Double.toString(result));

      }

    });

    add(addButton);

    subButton = new JButton("-");

    subButton.setBounds(80, 60, 50, 30);

    subButton.addActionListener(new ActionListener() {

      public void actionPerformed(ActionEvent e) {

        double result = Calculator.sub(Double.parseDouble(inputField1.getText()), Double.parseDouble(inputField2.getText()));

        textArea.setText(Double.toString(result));

      }

    });

    add(subButton);

    mulButton = new JButton("*");

    mulButton.setBounds(140, 60, 50, 30);

    mulButton.addActionListener(new ActionListener() {

      public void actionPerformed(ActionEvent e) {

        double result = Calculator.mul(Double.parseDouble(inputField1.getText()), Double.parseDouble(inputField2.getText()));

        textArea.setText(Double.toString(result));

      }

    });

    add(mulButton);

    divButton = new JButton("/");

    divButton.setBounds(200, 60, 50, 30);

    divButton.addActionListener(new ActionListener() {

      public void actionPerformed(ActionEvent e) {

        double result = Calculator.div(Double.parseDouble(inputField1.getText()), Double.parseDouble(inputField2.getText()));

        textArea.setText(Double.toString(result));

      }

    });

    add(divButton);

    textArea = new JTextArea();

    textArea.setBounds(260, 20, 100, 70);

    textArea.setEditable(false);

    add(textArea);

    setVisible(true);

  }

  public static void main(String[] args) {

    new CalculatorUI();

  }

}

class Calculator {

  public static double add(double a, double b) {

    return a + b;

  }

  public static double sub(double a, double b)

    return a - b;

  

  public static double mul(double a, double b) {

    return a * b;

  }

  public static double div(double a, double b)

    return a / b;

  

}

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复