当前位置: 代码迷 >> Java相关 >> 谁能帮小弟我写一个能加减乘除的完整代码 (via TranXcode)
  详细解决方案

谁能帮小弟我写一个能加减乘除的完整代码 (via TranXcode)

热度:2163   发布时间:2013-02-25 21:49:59.0
谁能帮我写一个能加减乘除的完整代码 (via TranXcode)
先谢谢了,

------解决方案--------------------------------------------------------
Java code
import java.awt.EventQueue;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.JFrame;import javax.swing.JPanel;import javax.swing.border.EmptyBorder;import javax.swing.JTextField;import javax.swing.JButton;public class Calc extends JFrame implements ActionListener {    private JPanel contentPane;    private JButton JBone = new JButton("1");    private JButton JBtwo = new JButton("2");    private JButton JBthree = new JButton("3");    private JButton JBfour = new JButton("4");    private JButton JBfive = new JButton("5");    private JButton JBsix = new JButton("6");    private JButton JBseven = new JButton("7");    private JButton JBeight = new JButton("8");    private JButton JBnight = new JButton("9");    private JButton JBzero = new JButton("0");    private JButton JBpoint = new JButton(".");    private JButton JBadd = new JButton("+");    private JButton JBmultiply = new JButton("*");    private JButton JBdivide = new JButton("/");    private JButton JBsubtract = new JButton("-");    private JButton JBequals = new JButton("=");    private JButton JBdbzero = new JButton("00");    private String tempOperand1 = null; //增加全局变量增加全局变量增加全局变量增加全局变量    private String tempOperand2 = null;    private JTextField tf = new JTextField();// 显示框    private JButton JBclear = new JButton("清零");    boolean add = false, substract = false, multiply = false, divide = false;    public Calc() {    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);    setBounds(100, 100, 369, 448);    setTitle("JAVA版计算器");    contentPane = new JPanel();    contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));    contentPane.setLayout(null);    setContentPane(contentPane);    tf.setBounds(10, 10, 333, 34);    contentPane.add(tf);    tf.setColumns(10);    tf.setEditable(false);    JBone.setBounds(30, 283, 52, 42);// 数字1    contentPane.add(JBone);    JBone.addActionListener(this);    JBtwo.setBounds(92, 283, 52, 42);// 数字2    contentPane.add(JBtwo);    JBtwo.addActionListener(this);    JBthree.setBounds(154, 283, 52, 42);// 数字3    contentPane.add(JBthree);    JBthree.addActionListener(this);    JBfour.setBounds(30, 231, 52, 42);// 数字4    contentPane.add(JBfour);    JBfour.addActionListener(this);    JBfive.setBounds(92, 231, 52, 42);// 数字5    contentPane.add(JBfive);    JBfive.addActionListener(this);    JBsix.setBounds(154, 231, 52, 42);// 数字6    contentPane.add(JBsix);    JBsix.addActionListener(this);    JBseven.setBounds(30, 179, 52, 42);// 数字7    contentPane.add(JBseven);    JBseven.addActionListener(this);    JBeight.setBounds(92, 179, 52, 42);// 数字8    contentPane.add(JBeight);    JBeight.addActionListener(this);    JBnight.setBounds(154, 179, 52, 42);// 数字9    contentPane.add(JBnight);    JBnight.addActionListener(this);    JBzero.setBounds(30, 343, 52, 42);// 数字0    contentPane.add(JBzero);    JBzero.addActionListener(this);    JBpoint.setBounds(92, 343, 52, 42);// 按钮.    contentPane.add(JBpoint);    JBpoint.addActionListener(this);    JBadd.setBounds(221, 283, 52, 102);// 按钮+    contentPane.add(JBadd);    JBadd.addActionListener(new ActionListener() {        public void actionPerformed(ActionEvent e) {        add = true;        tempOperand1 = tf.getText().trim();        tf.setText("");        }    });    JBmultiply.setBounds(221, 231, 52, 42);// 按钮*    contentPane.add(JBmultiply);    JBmultiply.addActionListener(new ActionListener() {        public void actionPerformed(ActionEvent e) {        multiply = true;        tempOperand1 = tf.getText().trim();        tf.setText("");        }    });    JBdivide.setBounds(283, 231, 52, 42);// 按钮/    contentPane.add(JBdivide);    JBdivide.addActionListener(new ActionListener() {        public void actionPerformed(ActionEvent e) {        divide = true;        tempOperand1 = tf.getText().trim();        tf.setText("");        }    });    JBsubtract.setBounds(283, 283, 52, 42);// 按钮-    contentPane.add(JBsubtract);    JBsubtract.addActionListener(new ActionListener() {        public void actionPerformed(ActionEvent e) {        substract = true;        tempOperand1 = tf.getText().trim();        tf.setText("");        }    });    JBequals.setBounds(283, 343, 52, 42);// 按钮=    contentPane.add(JBequals);    JBequals.addActionListener(new ActionListener() {        public void actionPerformed(ActionEvent e) {        tempOperand2 = tf.getText().trim();        ;        double operand1 = Double.parseDouble(tempOperand1);// 既然都有小数点了,就干脆用Double型把        double operand2 = Double.parseDouble(tempOperand2);        double result = 0;        if (add) {            result = operand1 + operand2;            add = false;        }        if (substract) {            result = operand1 - operand2;            substract = false;        }        if (multiply) {            result = operand1 * operand2;            multiply = false;        }        if (divide) {            result = operand1 / operand2;            divide = false;        }        tf.setText(result + "");        tempOperand1 = null;        tempOperand2 = null;        }    });    JBdbzero.setBounds(154, 343, 52, 42);// 按钮00 ////干嘛用的???????????????    contentPane.add(JBdbzero);    JBdbzero.addActionListener(this);//是不是想添加正负号??????    JBclear.setBounds(270, 179, 65, 42);    contentPane.add(JBclear);    JBclear.addActionListener(this);    }    public void actionPerformed(ActionEvent e) {    String m = null;    m = tf.getText().toString();        if (e.getSource() == JBone) {                m += "1";        tf.setText(m);          } else if (e.getSource() == JBtwo) {               m += "2";        tf.setText(m);           } else if (e.getSource() == JBthree) {               m += "3";        tf.setText(m);          } else if (e.getSource() == JBfour) {               m += "4";        tf.setText(m);           } else if (e.getSource() == JBfive) {                m += "5";        tf.setText(m);            } else if (e.getSource() == JBsix) {               m += "6";        tf.setText(m);           } else if (e.getSource() == JBseven) {               m += "7";        tf.setText(m);            } else if (e.getSource() == JBeight) {                m += "8";        tf.setText(m);           } else if (e.getSource() == JBnight) {                m += "9";        tf.setText(m);           } else if (e.getSource() == JBdbzero) {               m += "00";        tf.setText(m);          } else if (e.getSource() == JBpoint) {                m += ".";        tf.setText(m);           } else if (e.getSource() == JBclear) {        tf.setText("");    }     }    public static void main(String[] args) {    EventQueue.invokeLater(new Runnable() {        public void run() {        try {            Calc frame = new Calc();            frame.setVisible(true);        } catch (Exception e) {            e.printStackTrace();        }        }    });    }}
  相关解决方案