⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 calculatorframe.java

📁 sourcecodegen 用于生成源代码 通过jbuilder生成的代码
💻 JAVA
字号:
package sourcecodegenproj;

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

public class CalculatorFrame extends JFrame {
    JPanel jPanel1 = new JPanel();

    JPanel jPanel2 = new JPanel();

    JTextField jTextFiled = new JTextField();

    JButton jButton0 = new JButton("0");

    JButton jButton1 = new JButton("1");

    JButton jButton2 = new JButton("2");

    JButton jButton3 = new JButton("3");

    JButton jButton4 = new JButton("4");

    JButton jButton5 = new JButton("5");

    JButton jButton6 = new JButton("6");

    JButton jButton7 = new JButton("7");

    JButton jButton8 = new JButton("8");

    JButton jButton9 = new JButton("9");

    JButton jButton10 = new JButton("+");

    JButton jButton11 = new JButton("-");

    JButton jButton12 = new JButton("*");

    JButton jButton13 = new JButton("/");

    JButton jButton14 = new JButton("=");

    JButton jButton15 = new JButton("C");

    Listener listener = new Listener();

    String number1 = "";

    String number2 = "";

    String result = "0";

    boolean number1OK = false;

    boolean number2OK = false;

    String operator = "";

    public static void main(String args[]) {
        CalculatorFrame cf = new CalculatorFrame();
    }

    public CalculatorFrame() {
        showGUI();
        jPanel1.updateUI();
    }

    public void showGUI() {
        setVisible(true);
        setSize(300, 300);
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
// setResizable(false);
        jPanel1 = (JPanel) getContentPane();
        jPanel1.setLayout(new BorderLayout());
        jTextFiled.setText(result);

        jPanel1.add(jTextFiled, BorderLayout.NORTH);
        jPanel1.add(jPanel2, BorderLayout.CENTER);
        jPanel2.setLayout(new GridLayout(4, 4));
        jButton0.addActionListener(listener);
        jButton1.addActionListener(listener);
        jButton2.addActionListener(listener);
        jButton3.addActionListener(listener);
        jButton4.addActionListener(listener);
        jButton5.addActionListener(listener);
        jButton6.addActionListener(listener);
        jButton7.addActionListener(listener);
        jButton8.addActionListener(listener);
        jButton9.addActionListener(listener);
        jButton10.addActionListener(listener);
        jButton11.addActionListener(listener);
        jButton12.addActionListener(listener);
        jButton13.addActionListener(listener);
        jButton14.addActionListener(listener);
        jButton15.addActionListener(listener);

        jPanel2.add(jButton1);
        jPanel2.add(jButton2);
        jPanel2.add(jButton3);
        jPanel2.add(jButton4);
        jPanel2.add(jButton5);
        jPanel2.add(jButton6);
        jPanel2.add(jButton7);
        jPanel2.add(jButton8);
        jPanel2.add(jButton9);
        jPanel2.add(jButton0);
        jPanel2.add(jButton10);
        jPanel2.add(jButton11);
        jPanel2.add(jButton12);
        jPanel2.add(jButton13);
        jPanel2.add(jButton14);
        jPanel2.add(jButton15);

    }

//Inner Class
    class Listener implements ActionListener {
        public void actionPerformed(ActionEvent e) {

            if (e.getActionCommand().equals("0")) {
                if (number1OK == false) {
                    if (number1.length() < 9) {
                        number1 += "0";
                        jTextFiled.setText(number1);
                    }
                } else {
                    if (number2.length() < 9) {
                        number2 += "0";
                        jTextFiled.setText(number2);
                        number2OK = true;
                    }
                }

            }

            if (e.getActionCommand().equals("1")) {
                if (number1OK == false) {
                    if (number1.length() < 9) {
                        number1 += "1";
                        jTextFiled.setText(number1);
                    }
                } else {
                    if (number2.length() < 9) {
                        number2 += "1";
                        jTextFiled.setText(number2);
                        number2OK = true;
                    }
                }

            }
            if (e.getActionCommand().equals("2")) {
                if (number1OK == false) {
                    if (number1.length() < 9) {
                        number1 += "2";
                        jTextFiled.setText(number1);
                    }
                } else {
                    if (number2.length() < 9) {
                        number2 += "2";
                        jTextFiled.setText(number2);
                        number2OK = true;
                    }
                }
            }
            if (e.getActionCommand().equals("3")) {
                if (number1OK == false) {
                    if (number1.length() < 9) {
                        number1 += "3";
                        jTextFiled.setText(number1);
                    }
                } else {
                    if (number2.length() < 9) {
                        number2 += "3";
                        jTextFiled.setText(number2);
                        number2OK = true;
                    }
                }
            }
            if (e.getActionCommand().equals("4")) {
                if (number1OK == false) {
                    if (number1.length() < 9) {
                        number1 += "4";
                        jTextFiled.setText(number1);
                    }
                } else {
                    if (number2.length() < 9) {
                        number2 += "4";
                        jTextFiled.setText(number2);
                        number2OK = true;
                    }
                }
            }
            if (e.getActionCommand().equals("5")) {
                if (number1OK == false) {
                    if (number1.length() < 9) {
                        number1 += "5";
                        jTextFiled.setText(number1);
                    }
                } else {
                    if (number2.length() < 9) {
                        number2 += "5";
                        jTextFiled.setText(number2);
                        number2OK = true;
                    }
                }
            }
            if (e.getActionCommand().equals("6")) {
                if (number1OK == false) {
                    if (number1.length() < 9) {
                        number1 += "6";
                        jTextFiled.setText(number1);
                    }
                } else {
                    if (number2.length() < 9) {
                        number2 += "6";
                        jTextFiled.setText(number2);
                        number2OK = true;
                    }
                }
            }
            if (e.getActionCommand().equals("7")) {
                if (number1OK == false) {
                    if (number1.length() < 9) {
                        number1 += "7";
                        jTextFiled.setText(number1);
                    }
                } else {
                    if (number2.length() < 9) {
                        number2 += "7";
                        jTextFiled.setText(number2);
                        number2OK = true;
                    }
                }
            }
            if (e.getActionCommand().equals("8")) {
                if (number1OK == false) {
                    if (number1.length() < 9) {
                        number1 += "8";
                        jTextFiled.setText(number1);
                    }
                } else {
                    if (number2.length() < 9) {
                        number2 += "8";
                        jTextFiled.setText(number2);
                        number2OK = true;
                    }
                }
            }
            if (e.getActionCommand().equals("9")) {
                if (number1OK == false) {
                    if (number1.length() < 9) {
                        number1 += "9";
                        jTextFiled.setText(number1);
                    }
                } else {
                    if (number2.length() < 9) {
                        number2 += "9";
                        jTextFiled.setText(number2);
                        number2OK = true;
                    }
                }
            }
            if (e.getActionCommand().equals("+")) {

                operator = "+";
                if (number1OK == false)
                    number1OK = true;
            }
            if (e.getActionCommand().equals("-")) {

                operator = "-";
                if (number1OK == false)
                    number1OK = true;
            }
            if (e.getActionCommand().equals("*")) {

                operator = "*";
                if (number1OK == false)
                    number1OK = true;
            }
            if (e.getActionCommand().equals("/")) {

                operator = "/";
                if (number1OK == false)
                    number1OK = true;
            }
            if (e.getActionCommand().equals("=")) {

                if (number1OK && number2OK) {
                    System.out.println(number1);
                    System.out.println(number2);
                    try {
                        float n1 = Float.parseFloat(number1);
                        float n2 = Float.parseFloat(number2);

                        if (operator.equals("+")) {
                            result = String.valueOf(n1 + n2);
                            jTextFiled.setText(result);
                            System.out.println(result);
                        }

                        else if (operator.equals("-")) {
                            result = String.valueOf(n1 - n2);
                            jTextFiled.setText(result);
                            System.out.println(result);
                        }

                        else if (operator.equals("*")) {
                            result = String.valueOf(n1 * n2);
                            jTextFiled.setText(result);
                            System.out.println(result);
                        }

                        else if (operator.equals("/")) {
                            result = String.valueOf(n1 / n2);
                            jTextFiled.setText(result);
                            System.out.println(result);
                        }

                        number1 = "";
                        number2 = "";

                        number2OK = false;
                        number2OK = false;

                    } catch (Exception ex) {
                        System.out.println(ex.getMessage());
                        number2 = "";
                        result = "0";
                        number2OK = false;
                        number2OK = false;
                        operator = "";
                        jTextFiled.setText("0");
                    }

                    number1 = "";
                    number2 = "";
                    result = "0";
                    number2OK = false;
                    number2OK = false;
                    operator = "";
                }
            }
            if (e.getActionCommand().equals("C")) {
                number1 = "";
                number2 = "";
                result = "0";
                number2OK = false;
                number2OK = false;
                operator = "";
                jTextFiled.setText("0");
            }
            if (e.getActionCommand().equals(".")) {

            }
        }
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -