您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > JAVA编写的计算器源代码
packagejsq;importjava.awt.Color;importjava.awt.GridLayout;importjava.awt.event.ActionEvent;importjava.awt.event.ActionListener;importjava.awt.event.WindowEvent;importjava.awt.event.WindowListener;importjavax.swing.ImageIcon;importjavax.swing.JButton;importjavax.swing.JFrame;importjavax.swing.JLabel;importjavax.swing.JMenu;importjavax.swing.JMenuBar;importjavax.swing.JMenuItem;importjavax.swing.JOptionPane;importjavax.swing.JPanel;importjavax.swing.JTextField;importjavax.swing.UIManager;publicclassTestimplementsActionListener{/****/JFramef=newJFrame();JTextFieldtf=newJTextField(0.);JMenuBarbar=newJMenuBar();JMenumenuEdit=newJMenu(编辑(E));JMenumenuView=newJMenu(查看(V));JMenumenuHelp=newJMenu(帮助(H));JMenuItemmenuEditCopy=newJMenuItem(复制(C));JMenuItemmenuEditPaste=newJMenuItem(粘贴(V));JMenuItemmenuHelpAbout=newJMenuItem(关于计算器(A));JPanelpanel0=newJPanel();JPanelpanel2=newJPanel();JPanelpanel=newJPanel();JPanelpanel3=newJPanel();JPanelpanel4=newJPanel();JPanelpanel5=newJPanel();JButtonbtBk=newJButton(Backspace);JButtonbtCe=newJButton(Ce);JButtonbtCl=newJButton(C);JButtonbt7=newJButton(7);JButtonbt8=newJButton(8);JButtonbt9=newJButton(9);JButtonbtDiv=newJButton(/);JButtonbtSqrt=newJButton(sqrt);JButtonbt4=newJButton(4);JButtonbt5=newJButton(5);JButtonbt6=newJButton(6);JButtonbtMult=newJButton(*);JButtonbtMol=newJButton(%);JButtonbt1=newJButton(1);JButtonbt2=newJButton(2);JButtonbt3=newJButton(3);JButtonbtMinu=newJButton(-);JButtonbtCoun=newJButton(1/x);JButtonbt0=newJButton(0);JButtonbtPoint=newJButton(.);JButtonbtEqual=newJButton(=);JButtonbtAdd=newJButton(+);JButtonbtSign=newJButton(+/-);/***@paramargs*/publicvoidinit(){f.add(panel0);f.add(tf,North);f.setJMenuBar(bar);bar.add(menuEdit);bar.add(menuView);bar.add(menuHelp);menuEdit.add(menuEditCopy);menuEdit.add(menuEditPaste);menuHelp.add(menuHelpAbout);tf.setEditable(false);//不可编辑tf.setHorizontalAlignment(JTextField.RIGHT);//从右侧输入数据panel0.add(panel2);panel0.add(panel);panel0.add(panel3);panel0.add(panel4);panel0.add(panel5);panel2.setLayout(newGridLayout(1,4));panel2.add(btBk);panel2.add(btCe);panel2.add(btCl);panel.setLayout(newGridLayout(1,5));panel.add(bt7);panel.add(bt8);panel.add(bt9);panel.add(btDiv);panel.add(btSqrt);//根号panel3.setLayout(newGridLayout(1,5));panel3.add(bt4);panel3.add(bt5);panel3.add(bt6);panel3.add(btMult);panel3.add(btMol);//百分号panel4.setLayout(newGridLayout(1,5));panel4.add(bt1);panel4.add(bt2);panel4.add(bt3);panel4.add(btMinu);panel4.add(btCoun);//倒数panel5.setLayout(newGridLayout(1,5));panel5.add(bt0);panel5.add(btPoint);panel5.add(btAdd);panel5.add(btEqual);panel5.add(btSign);//正负符号btBk.setForeground(newColor(255,0,0));btCe.setForeground(newColor(255,0,0));btCl.setForeground(newColor(255,0,0));btAdd.setForeground(newColor(255,0,0));btMult.setForeground(newColor(255,0,0));btDiv.setForeground(newColor(255,0,0));btMinu.setForeground(newColor(255,0,0));btEqual.setForeground(newColor(255,0,0));bt0.setForeground(newColor(0,0,255));bt1.setForeground(newColor(0,0,255));bt2.setForeground(newColor(0,0,255));bt3.setForeground(newColor(0,0,255));bt4.setForeground(newColor(0,0,255));bt5.setForeground(newColor(0,0,255));bt6.setForeground(newColor(0,0,255));bt7.setForeground(newColor(0,0,255));bt8.setForeground(newColor(0,0,255));bt9.setForeground(newColor(0,0,255));btSqrt.setForeground(newColor(0,0,255));btMol.setForeground(newColor(0,0,255));btCoun.setForeground(newColor(0,0,255));btSign.setForeground(newColor(0,0,255));//注册监听bt1.addActionListener(this);bt2.addActionListener(this);bt3.addActionListener(this);bt4.addActionListener(this);bt5.addActionListener(this);bt6.addActionListener(this);bt7.addActionListener(this);bt8.addActionListener(this);bt9.addActionListener(this);bt0.addActionListener(this);btAdd.addActionListener(this);btMinu.addActionListener(this);btMult.addActionListener(this);btDiv.addActionListener(this);btEqual.addActionListener(this);btPoint.addActionListener(this);btSqrt.addActionListener(this);btMol.addActionListener(this);btCoun.addActionListener(this);btSign.addActionListener(this);btBk.addActionListener(this);btCe.addActionListener(this);btCl.addActionListener(this);menuEditCopy.addActionListener(this);menuEditPaste.addActionListener(this);menuHelpAbout.addActionListener(this);f.addWindowListener(newMyWinLis());f.setTitle(计算器);f.setSize(295,240);f.setResizable(false);//不能改变窗体大小f.setVisible(true);}StringforeNum=null;StringcurrOpr=null;StringcurrNum=null;booleani=true;Stringcopy;//复制publicvoidactionPerformed(ActionEvente){//TODO自动生成方法存根Objectobj=e.getSource();//输入数字if(obj==bt1||obj==bt2||obj==bt3||obj==bt4||obj==bt5||obj==bt6||obj==bt7||obj==bt8||obj==bt9||obj==bt0){if(i==true)tf.setText(e.getActionCommand());elsetf.setText(tf.getText()+e.getActionCommand());i=false;}//小数点elseif(obj==btPoint){if(i==false)tf.setText(tf.getText()+'.');}//实现开根号elseif(obj==btSqrt){if(tf.getText().charAt(0)=='-'){tf.setText(函数输入无效);}elsetf.setText(Double.toString(java.lang.Math.sqrt(Double.parseDouble(tf.getText()))));i=true;}//实现倒数elseif(obj==btCoun
本文标题:JAVA编写的计算器源代码
链接地址:https://www.777doc.com/doc-6087113 .html