《java编写简单计算器源代码(共8页).doc》由会员分享,可在线阅读,更多相关《java编写简单计算器源代码(共8页).doc(8页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上import javax.swing.*;import java.awt.event.*;import java.awt.*;import java.lang.Math; class ring extends JFrame implements ActionListener /定义成员变量: /JFrame frame;/定义一个窗口类; JTextField text;/定义一个文本框类; JLabel label;/定义一个标签类; JPanel p1,p2,p3,p4,p5,p6;/定义面板类; String s1,s,s2;/定义三个字符串变量; int co
2、unt=0; JButton a1,a2,a3,a4,a5,a6,b1,b2,b3,b4,b5,b6,c1,c2,c3,c4,c5,c6,d1,d2,d3,d4,d5,d6; /ring的构造函数; ring() this.setTitle(计算器);/ super(计算器); JMenuBar menubar1=new JMenuBar();/新建菜单条; this.setJMenuBar(menubar1); JMenu menu1=new JMenu(编辑(E); JMenu menu2=new JMenu(查看(V); JMenu menu3=new JMenu(帮助(H); menu
3、bar1.add(menu1); menubar1.add(menu2); menubar1.add(menu3); JMenuItem item1=new JMenuItem(复制(c) ctrl+c); JMenuItem item2=new JMenuItem(粘贴(p) ctrl+v); JMenuItem item3=new JMenuItem(标准型(T); JMenuItem item4=new JMenuItem(科学型(s); JMenuItem item5=new JMenuItem(数字分组(I); JMenuItem item6=new JMenuItem(帮助主题(H
4、); JMenuItem item7=new JMenuItem(关于计算机(A); menu1.add(item1); menu1.add(item2); menu2.add(item3); menu2.add(item4); menu2.add(item5); menu3.add(item6); menu3.add(item7); this.show(); this.setBounds(100,100,500,100); this.setVisible(true); p1=new JPanel();/新建面板对象; label=new JLabel(计算结果);/新建一个“计算结果”的标签
5、; text=new JTextField(25);/定义25字符的文档框; text.setEditable(false); text.setHorizontalAlignment(JTextField.LEFT);/定义水平左对齐; p1.add(label);/将标签label添加到面板p1中; p1.add(text);/将文本框text添加到面板p1中; a1=new JButton(Backspace); a2=new JButton(7); a3=new JButton(8); a4=new JButton(9); a5=new JButton(/); a6=new JButto
6、n(sqrt); b1=new JButton(MR); b2=new JButton(4); b3=new JButton(5); b4=new JButton(6); b5=new JButton(*); b6=new JButton(%); c1=new JButton(MS); c2=new JButton(1); c3=new JButton(2); c4=new JButton(3); c5=new JButton(-); c6=new JButton(1/x); d1=new JButton(M+); d2=new JButton(0); d3=new JButton(+/-);
7、 d4=new JButton(.); d5=new JButton(+); d6=new JButton(=); JPanel p=new JPanel(new GridLayout(4,6,10,10); p.add(a1); p.add(a2); p.add(a3); p.add(a4); p.add(a5); p.add(a6); p.add(b1); p.add(b2); p.add(b3); p.add(b4); p.add(b5); p.add(b6); p.add(c1); p.add(c2); p.add(c3); p.add(c4); p.add(c5); p.add(c6
8、); p.add(d1); p.add(d2); p.add(d3); p.add(d4); p.add(d5); p.add(d6); add(p1); add(p,BorderLayout.SOUTH);/将面板p添加到窗口中;并指定面板p位于底部; /为按钮注册监听器; a1.addActionListener(this); a2.addActionListener(this); a3.addActionListener(this); a4.addActionListener(this); a5.addActionListener(this); a6.addActionListener(
9、this); b1.addActionListener(this); b2.addActionListener(this); b3.addActionListener(this); b4.addActionListener(this); b5.addActionListener(this); b6.addActionListener(this); c1.addActionListener(this); c2.addActionListener(this); c3.addActionListener(this); c4.addActionListener(this); c5.addActionL
10、istener(this); c6.addActionListener(this); d1.addActionListener(this); d2.addActionListener(this); d3.addActionListener(this); d4.addActionListener(this); d5.addActionListener(this); d6.addActionListener(this); public void actionPerformed(ActionEvent e) String str=e.getActionCommand();if(str.equals(
11、7) text.setText( text.getText()+7); else if(str.equals(8)text.setText(text.getText()+8);else if(str.equals(9)text.setText(text.getText()+9);else if(str.equals(4)text.setText(text.getText()+4);else if(str.equals(5)text.setText(text.getText()+5);else if(str.equals(6)text.setText(text.getText()+6);else
12、 if(str.equals(1)text.setText(text.getText()+1);else if(str.equals(2)text.setText(text.getText()+2);else if(str.equals(3)text.setText(text.getText()+3);else if(str.equals(0)text.setText(text.getText()+0);else if(str.equals(.)text.setText(text.getText()+.);else if(str.equals(+/-)count+;if(count%2=0)t
13、ext.setText(+text.getText(); else text.setText(-+text.getText();else if(str.equals(Backspace)text.setText();else if(str.equals(+)s1=text.getText();s=+;text.setText();else if(str.equals(-)s1=text.getText();s=-;text.setText();else if(str.equals(*)s1=text.getText();s=*;text.setText();else if(str.equals
14、(/)s1=text.getText();s=/;text.setText();else if(str.equals(1/x)s1=text.getText();s=1/x;text.setText();double num11=Double.parseDouble(s1);double ans=0;ans=1/num11;text.setText(ans+);else if(str.equals(sqrt)s1=text.getText();s=sqrt;text.setText();double num11=Double.parseDouble(s1);double ans=0;ans=M
15、ath.sqrt(num11);text.setText(ans+);else if(str.equals(=)s2=text.getText();double num11=Double.parseDouble(s1);double num22=Double.parseDouble(s2);double ans=0;if(s.equals(+)ans=num11+num22;else if(s.equals(-)ans=num11-num22;else if(s.equals(*)ans=num11*num22;else if(s.equals(/)ans=num11/num22;text.setText(ans+); public static void main(String args) ring ring=new ring();ring.setBounds(400,300,450,300);ring.show();ring.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);专心-专注-专业
限制150内