java基础 用netbeans做计算器

NetBeans实现计算器 这周做了个计算器。用NetBeans,开始一直在郁闷文本框里的值经常被覆盖,只能输入一位数,后来想到了jTextField1.getText()+jButton1.getText()  这个方法,获取文本框的值然后再像字符串拼接似的加上接下来输入的值。加减乘除的方法为下代码标红的。等号的运算为下列代码标蓝的。在点击加号的方法里获取第一个加数的值,在点击等号的方法里获取第二个加数的值。一下为主要代码 阅读详情
/*
 * ComputerPad.java
 *
 * Created on 2008年10月30日, 上午8:24
 */
package Computer;

import java.awt.event.*;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JOptionPane;

/**
 *
 * @author  Administrator
 */
public class ComputerPad extends javax.swing.JFrame implements ActionListener {

    /** Creates new form ComputerPad */
    JFrame frame;
    String copycontent = "";
    private boolean dotExist,  operated,  equaled; // 帮助运算的布尔变量 
    private double storedNumber; // 目前的结果 
    private char lastOperator; // 表示上一运算符

    public ComputerPad() {
        initComponents();
        btn1.addActionListener(this);
        btn2.addActionListener(this);
        btn3.addActionListener(this);
        btn4.addActionListener(this);
        btn5.addActionListener(this);
        btn6.addActionListener(this);
        btn7.addActionListener(this);
        btn8.addActionListener(this);
        btn9.addActionListener(this);
        btn0.addActionListener(this);
        btnAdd.addActionListener(this);
        btnDivide.addActionListener(this);
        btnEquals.addActionListener(this);
        btnMinus.addActionListener(this);
        btnMultiply.addActionListener(this);
        btnSquart.addActionListener(this);
        btnDot.addActionListener(this);
        btnPercent.addActionListener(this);
        btnPart.addActionListener(this);
        btnNegative.addActionListener(this);
        btnBackSpace.addActionListener(this);
                
        // 初始化变量 
        dotExist = false; // 表示当前的数是否有小数点 

        operated = false; // 表示任意运算符是否被按下 

        equaled = false; // 表示等号是否被按下 

        storedNumber = 0;
        lastOperator = '?';
    }

    /** This method is called from within the constructor to
     * initialize the form.
     * WARNING: Do NOT modify this code. The content of this method is
     * always regenerated by the Form Editor.
     */
    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">                          
    private void initComponents() {

        jPanel1 = new javax.swing.JPanel();
        btn1 = new NumberButton(1);
        btnSquart = new OperationButton("sqrt");
        btn2 = new NumberButton(2);
        btn3 = new NumberButton(3);
        btn4 = new NumberButton(4);
        btn5 = new NumberButton(5);
        btn6 = new NumberButton(6);
        btn7 = new NumberButton(7);
        btn9 = new NumberButton(9);
        btn8 = new NumberButton(8);
        btnDivide = new OperationButton("/");
        btnMinus = new OperationButton("-");
        btnMultiply = new OperationButton("*");
        btnPart = new OperationButton("1/x");
        btnPercent = new OperationButton("%");
        btn0 = new NumberButton(0);
        btnNegative = new OperationButton("+/-");
        txtField = new javax.swing.JTextField();
        btnEquals = new OperationButton("=");
        btnAdd = new OperationButton("+");
        btnDot = new javax.swing.JButton();
        btnBackSpace = new javax.swing.JButton();
        btnClear = new javax.swing.JButton();
        jMenuBar1 = new javax.swing.JMenuBar();
        JMuleEditor = new javax.swing.JMenu();
        jMenuItemCopy = new javax.swing.JMenuItem();
        jMenuItemPaste = new javax.swing.JMenuItem();
        jMenu3 = new javax.swing.JMenu();
        jMenuItemHelp = new javax.swing.JMenuItem();
        jSeparator1 = new javax.swing.JSeparator();
        jMenuItemAbout = new javax.swing.JMenuItem();

        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
        setTitle("Calculator");

        btn1.setForeground(new java.awt.Color(0, 0, 255));
        btn1.setText("1");
        btn1.setAutoscrolls(true);
        btn1.setLabel("1");

        btnSquart.setText("sqrt");

        btn2.setText("2");

        btn3.setText("3");

        btn4.setLabel("4");

        btn5.setText("5");

        btn6.setText("6");

        btn7.setText("7");

        btn9.setText("9");

        btn8.setText("8");

        btnDivide.setText("/");

        btnMinus.setText("-");

        btnMultiply.setText("*");

        btnPart.setText("1/x");

        btnPercent.setText("%");

        btn0.setText("0");

        btnNegative.setText("+/-");

        txtField.setText("0");
        txtField.setEnabled(false);

        btnEquals.setText("=");

        btnAdd.setText("+");

        btnDot.setText(".");

        btnBackSpace.setText("BackSpace");

        btnClear.setText("c");
        btnClear.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnClearActionPerformed(evt);
            }
        });

        org.jdesktop.layout.GroupLayout jPanel1Layout = new org.jdesktop.layout.GroupLayout(jPanel1);
        jPanel1.setLayout(jPanel1Layout);
        jPanel1Layout.setHorizontalGroup(
            jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
            .add(jPanel1Layout.createSequentialGroup()
                .add(19, 19, 19)
                .add(jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING, false)
                    .add(jPanel1Layout.createSequentialGroup()
                        .add(btn1, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 58, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
                        .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
                        .add(btn2, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 58, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
                        .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
                        .add(btn3, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 58, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
                        .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
                        .add(btnDivide, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 58, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
                        .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
                        .add(btnSquart, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 58, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
                    .add(jPanel1Layout.createSequentialGroup()
                        .add(btn4, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 58, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
                        .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
                        .add(btn5, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 58, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
                        .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
                        .add(btn6, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 58, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
                        .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
                        .add(btnMultiply, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 58, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
                        .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
                        .add(btnPercent, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 58, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
                    .add(jPanel1Layout.createSequentialGroup()
                        .add(btn7, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 58, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
                        .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
                        .add(btn8, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 58, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
                        .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
                        .add(btn9, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 58, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
                        .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
                        .add(btnMinus, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 58, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
                        .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
                        .add(btnPart, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 58, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
                    .add(jPanel1Layout.createSequentialGroup()
                        .add(btn0, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 58, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
                        .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
                        .add(btnNegative, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 58, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
                        .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
                        .add(btnDot, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 58, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
                        .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
                        .add(btnAdd, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 58, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
                        .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
                        .add(btnClear, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 58, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
                    .add(txtField)
                    .add(jPanel1Layout.createSequentialGroup()
                        .add(btnBackSpace, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 145, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
                        .add(18, 18, 18)
                        .add(btnEquals, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 151, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)))
                .add(48, 48, 48))
        );

        jPanel1Layout.linkSize(new java.awt.Component[] {btn1, btn2, btn3, btn4, btn5, btn6, btn7, btn8, btn9}, org.jdesktop.layout.GroupLayout.HORIZONTAL);

        jPanel1Layout.setVerticalGroup(
            jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
            .add(jPanel1Layout.createSequentialGroup()
                .addContainerGap()
                .add(txtField, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 29, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
                .add(18, 18, 18)
                .add(jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
                    .add(btn2, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 50, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
                    .add(btn3, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 50, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
                    .add(btnDivide, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 50, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
                    .add(btnSquart, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 50, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
                    .add(btn1, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 49, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
                .add(30, 30, 30)
                .add(jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
                    .add(btn5, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 50, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
                    .add(btn6, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 50, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
                    .add(btnMultiply, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 50, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
                    .add(btnPercent, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 50, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
                    .add(btn4, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 50, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
                .add(24, 24, 24)
                .add(jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
                    .add(btn8, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 50, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
                    .add(btn9, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 50, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
                    .add(btnMinus, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 50, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
                    .add(btnPart, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 50, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
                    .add(btn7, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 50, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
                .add(20, 20, 20)
                .add(jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
                    .add(btn0, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 50, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
                    .add(btnNegative, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 50, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
                    .add(btnDot, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 50, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
                    .add(btnAdd, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 50, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
                    .add(btnClear, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 50, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
                .add(27, 27, 27)
                .add(jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
                    .add(btnEquals, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 50, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
                    .add(btnBackSpace, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 50, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
                .addContainerGap(50, Short.MAX_VALUE))
        );

        JMuleEditor.setText("编辑");

        jMenuItemCopy.setText("复制");
        jMenuItemCopy.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jMenuItemCopyActionPerformed(evt);
            }
        });
        JMuleEditor.add(jMenuItemCopy);

        jMenuItemPaste.setText("粘贴");
        jMenuItemPaste.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jMenuItemPasteActionPerformed(evt);
            }
        });
        JMuleEditor.add(jMenuItemPaste);

        jMenuBar1.add(JMuleEditor);

        jMenu3.setText("帮助");

        jMenuItemHelp.setText("帮助主题");
        jMenuItemHelp.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jMenuItemHelpActionPerformed(evt);
            }
        });
        jMenu3.add(jMenuItemHelp);
        jMenu3.add(jSeparator1);

        jMenuItemAbout.setText("关于计算器");
        jMenuItemAbout.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jMenuItemAboutActionPerformed(evt);
            }
        });
        jMenu3.add(jMenuItemAbout);

        jMenuBar1.add(jMenu3);

        setJMenuBar(jMenuBar1);

        org.jdesktop.layout.GroupLayout layout = new org.jdesktop.layout.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
            .add(layout.createSequentialGroup()
                .add(jPanel1, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 381, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
                .addContainerGap(org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
            .add(jPanel1, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
        );

        pack();
    }// </editor-fold>                        

private void btnClearActionPerformed(java.awt.event.ActionEvent evt) {                                         
txtField.setText(""); 
dotExist = false; 
storedNumber = 0; 
lastOperator = '?'; // TODO add your handling code here:
}                                        

private void jMenuItemAboutActionPerformed(java.awt.event.ActionEvent evt) {                                               
JOptionPane.showMessageDialog(frame, "      Java计算器\n      赵晨诚 制作\n\n http://cse.cslg.cn/", "关于计算器", JOptionPane.INFORMATION_MESSAGE);
            // TODO add your handling code here:
}                                              

private void jMenuItemHelpActionPerformed(java.awt.event.ActionEvent evt) {                                              
try {
                String filePath = "C:/WINDOWS/Help/calc.chm";
                Runtime.getRuntime().exec("cmd.exe /c " + filePath);


            } catch (Exception eeee) {
                JOptionPane.showMessageDialog(frame, "      Java计算器\n      打开系统的计算器出错", "sorry", JOptionPane.INFORMATION_MESSAGE);
            }// TODO add your handling code here:
}                                             

private void jMenuItemCopyActionPerformed(java.awt.event.ActionEvent evt) {                                              
copycontent = txtField.getText();// TODO add your handling code here:
}                                             

private void jMenuItemPasteActionPerformed(java.awt.event.ActionEvent evt) {                                               
txtField.setText(txtField.getText() + copycontent);// TODO add your handling code here:
}                                              

    public void actionPerformed(ActionEvent e) {
        JButton btn = (JButton) e.getSource();
        
        if (btn == btnAdd) {
            operate('+');
            equaled = false;
        } else if (btn == btnDivide) {
            operate('/');
            equaled = false;
        } else if (btn == btnEquals) {
            operate('=');
            equaled = true;
        } else if (btn == btnMinus) {
            operate('-');
            equaled = false;
        } else if (btn == btnMultiply) {
            operate('*');
            equaled = false;
        } else if (btn == btnSquart) {
            operate('s');
            operate('=');
            equaled = false;
        }else if(btn==btnNegative){
            operate('N');
            operate('=');
            equaled = true;
        }else if(btn==btnPercent){
            operate('%');
            operate('=');
            equaled=true;
        }else if(btn==btnPart){
            operate('P');
            operate('=');
            equaled = true;
        }else if(btn==btnBackSpace){
            if(txtField.getText().length()!=0)
                txtField.setText(txtField.getText().substring(0, txtField.getText().length()-1));
        }
        else
        {
            if (e.getSource() instanceof NumberButton) {
                if (equaled) {
                    storedNumber = 0;
                }
                NumberButton b = (NumberButton) e.getSource();
                if (txtField.getText().equals("0")) {
                    txtField.setText("" + b.getNumber());
                } else if (!operated) {
                    txtField.setText(txtField.getText() + b.getNumber());
                } else {
                    txtField.setText("" + b.getNumber());
                    operated = false;
                }
            }
            if (btn == btnDot && !dotExist) {
                txtField.setText(txtField.getText() + ".");
                dotExist = true;
            }
        }
    }

    private void operate(char operator) {
        double currentNumber = Double.valueOf(txtField.getText()).doubleValue();
        switch (lastOperator) {
            case '?': {
                storedNumber = currentNumber;
                break;
            }
            case '+': {
                storedNumber += currentNumber;
                break;
            }
            case '-': {
                storedNumber -= currentNumber;
                break;
            }
            case '*': {
                storedNumber *= currentNumber;
                break;
            }
            case '/': {
                storedNumber /= currentNumber;
                break;
            }
            case 'N': {
                storedNumber *= -1;
                break;
            }
            case 's': {
                storedNumber = Math.sqrt(currentNumber);
                break;
            }
            case '%':{
                storedNumber *=0.01;
                break;
            }
            case 'P':{
                storedNumber = 1/storedNumber;
                break;
            }
        }
        if (lastOperator == '=' && equaled) {
            storedNumber = currentNumber;
        }
        txtField.setText("" + storedNumber);
        operated = true;
        lastOperator = operator;
    }

    /**
    * @param args the command line arguments
    */
    public static void main(String args[]) {
        java.awt.EventQueue.invokeLater(new Runnable() {
            public void run() {
                new ComputerPad().setVisible(true);
            }
        });
    }

    // Variables declaration - do not modify                     
    private javax.swing.JMenu JMuleEditor;
    private javax.swing.JButton btn0;
    private javax.swing.JButton btn1;
    private javax.swing.JButton btn2;
    private javax.swing.JButton btn3;
    private javax.swing.JButton btn4;
    private javax.swing.JButton btn5;
    private javax.swing.JButton btn6;
    private javax.swing.JButton btn7;
    private javax.swing.JButton btn8;
    private javax.swing.JButton btn9;
    private javax.swing.JButton btnAdd;
    private javax.swing.JButton btnBackSpace;
    private javax.swing.JButton btnClear;
    private javax.swing.JButton btnDivide;
    private javax.swing.JButton btnDot;
    private javax.swing.JButton btnEquals;
    private javax.swing.JButton btnMinus;
    private javax.swing.JButton btnMultiply;
    private javax.swing.JButton btnNegative;
    private javax.swing.JButton btnPart;
    private javax.swing.JButton btnPercent;
    private javax.swing.JButton btnSquart;
    private javax.swing.JMenu jMenu3;
    private javax.swing.JMenuBar jMenuBar1;
    private javax.swing.JMenuItem jMenuItemAbout;
    private javax.swing.JMenuItem jMenuItemCopy;
    private javax.swing.JMenuItem jMenuItemHelp;
    private javax.swing.JMenuItem jMenuItemPaste;
    private javax.swing.JPanel jPanel1;
    private javax.swing.JSeparator jSeparator1;
    private javax.swing.JTextField txtField;
    // End of variables declaration                   

    

}
/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package Computer;

/**
 *
 * @author Administrator
 */
import java.awt.*;
import javax.swing.*;
public class NumberButton extends JButton
{
  int number;
  public NumberButton(int number)
   {
    super(""+number);
    this.number=number;
    setForeground(Color.blue);
   }
  public int getNumber()
   {
     return number;
   }
}

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package Computer;

/**
 *
 * @author Administrator
 */
import java.awt.*;
import javax.swing.*;
public class OperationButton extends JButton
{
  String 运算符号;
  public OperationButton(String s)
   {
    super(s);
    运算符号=s;
    setForeground(Color.red);
   }
  public String getOperationSymbol()
   {
     return 运算符号;
   }
}


Java+NetBeans实现简易的计算器 此计算器能够实现简单的加减乘除运算。 插入图片后的界面:       创建一个方法来获取数字的值: private void setNum(String str){ //实例化对象,获取文本框中的内容 String strText = new String(jTextField1.getText()); //如果jTextField1的内容等于“0”,则文本框等 阅读详情

相关推荐

NetBeans实现简易计算器

import java.util.logging.Level; import java.util.logging.Logger; import javax.script.ScriptEngine; import javax.script.ScriptEngineManager; import javax.script.ScriptException; /**  *  * @a

Alpssoul的博客 1520

用NetBeans写的计算器

可以实现和Windows自带的计算器功能,加减乘除,取余,平方根,小数点。

关于用NetBeans做简易计算器心得

首先这是我做的一个计算器的界面..窗体内包含一个4*4网格布局的面板 内有16个按钮一个文本字段 包含123456789和加减乘除和清空 private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {                                                // 按钮

u013214335的博客 1122

NetBeans实现的简单计算器

JAVA只是学了两个周的,渣作!!!! 一、首先写一个计算加减乘除方法的类 /**  *计算加减乘除方法的类  * @author   */ public class Suanfa {     double a;     double b;     double c;     public double getA() { return a; } public 

爬坑手册 2685

用NetBeans做简易计算器

利用NetBeans做简易计算器,实现计算器基本功能

weizeping_0625a的博客 850

Netbeans做的计算器界面

制作的简单计算器,加了背景,有截图奥。。

huangjuntao_1的博客 869

用NetBeans编写计算器

NetBeans是开源软件开发集成环境,是一个开放框架,可扩展的开发平台,可以用于Java,C/C++,PHP等语言的开发,本身是一个开发平台,可以通过扩展插件来扩展功能。(摘自好搜百科)

sunshineday 8088

用NetBeans做一个简易计算器的几处要点

用NetBeans做了个简易计算器,其中几个主要功能的实现方法分享一下 1.数字的输入   public void num(String str) {         StringBuffer strbuf = new StringBuffer(jTextField1.getText()); //注意只有0时的添加         if (jTextField1.getTex

ql1436516541的博客 1232

用NetBeans做简单的计算器

package jisuanqi; import java.util.logging.Level; import java.util.logging.Logger; import javax.script.ScriptEngine; import javax.script.ScriptEngineManager; import javax.script.ScriptExcepti

qiaoleilei520的博客 2043

使用netbeans实现一个简易计算器

package javaapplication1; public class 简易计算器 extends javax.swing.JFrame {     /**      * Creates new form 简易计算器      */     public 简易计算器() {         initComponents();     }      public String

meet1992的博客 2945

简易计算器Netbeans 图形界面

刚开始学习使用Netbeans,鼓捣了半天,总算是有点头绪了,作出一个简易的计算器,功能还有待改进 /* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * a

柚子茶的博客 2118

NetBeans 简易科学计算器

使用NetBeans做的简易科学计算器。其中一些功能不算很完美,但基本功能以及科学与普通计算器的转换做得还算可以。 本人电脑是MAC,使用的是NetBeans中的Maven进行的编写。

NetBeans IDE中的基础计算器开发指南

NetBeans集成开发环境(IDE)是Sun Microsystems(后被Oracle收购)开发的一个开源集成开发工具,它支持多种编程语言,尤其是Java。作为一个全功能的、成熟的IDE,NetBeans提供了一系列丰富的特性来促进开发效率和简化开发流程,包括但不限于代码编辑、调试、构建、单元测试,以及版本控制工具的集成。NetBeans的GUI设计工具使用Swing组件库来构建Java桌面应用程序的用户界面。

weixin_35762258的博客 1169

Java用Netbeans的JFrame编程计算器

1.JFrame代码 package calculator; import java.util.Arrays; /** * * @author Administrator */ public class UI extends javax.swing.JFrame { String str1=" ",str2; double num1,num2; char oper; double result; String re; /** * Cr...

m0_60653263的博客 1236

基于NetBeans的Java图形用户界面计算器

本文还有配套的精品资源,点击获取 简介:本项目是一个适合初学者的Java基础应用,通过NetBeans IDE开发一个图形用户界面(GUI)计算器。利用NetBeans的GUI Builder和Swing组件,如按钮、标签和文本框,构建计算器界面。介绍布局管理、事件监听、计算逻辑实现、数据模型创建、设计原则、调试与测试以及打包与部署的完整流程。 1. Java计算...

weixin_42128315的博客 573

使用NetBeans 8.2开发的Java图形计算器完整指南

本文还有配套的精品资源,点击获取 简介:这是一个使用Java语言和NetBeans IDE 8.2构建的简单图形用户界面计算器应用。项目涵盖了设计界面、实现Java Swing组件以及编写事件处理逻辑等关键概念。通过此项目,开发者可以学习Java基础、Swing库使用、事件驱动编程、GUI布局管理、基本和复杂数学运算,以及如何利用NetBeans IDE进行开发。项目可能包...

weixin_29025501的博客 1797

用netbeans编的简易计算器

用netbeans编的简易计算器 分类: java2014-12-28 16:04 313人阅读 评论(0) 收藏 举报 这学期开的java课一节都没听过,半个月前ZZG说要用简易计算器,说只实现+的功能就行可以ida编,这就大大降低了难度=。=虽然java我一堂课都没听过,但是迫于ZZG的威胁我在寝室憋了3个小时搞出来了,顺便也把java简单的了解一下,毕竟还有期末考试呢

sunshine_mei的博客 971

用netbeans编写的java简易计算器

用netbeans编写的java简易计算器,可通过点击界面按钮实现简单的加减乘除运算。

上一篇: java基础 IO流
下一篇: 测试基础 测试用例
Java__TestFundation
博客等级 码龄11年 3粉丝 19原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值