有界面的计算器.doc

上传人:s9****2 文档编号:543803896 上传时间:2024-02-21 格式:DOC 页数:6 大小:29.50KB
返回 下载 相关 举报
有界面的计算器.doc_第1页
第1页 / 共6页
有界面的计算器.doc_第2页
第2页 / 共6页
有界面的计算器.doc_第3页
第3页 / 共6页
有界面的计算器.doc_第4页
第4页 / 共6页
有界面的计算器.doc_第5页
第5页 / 共6页
点击查看更多>>
资源描述

《有界面的计算器.doc》由会员分享,可在线阅读,更多相关《有界面的计算器.doc(6页珍藏版)》请在金锄头文库上搜索。

1、有界面的计算器import java.awt.*;import java.awt.event.*;public class Counters extends Frame Panel panel; TextField tf; Button b,add,sub,mul,div,cle, equ,dot,two,sqr,tsex; Boolean isDot,operated,equaled; double storedNumber; char lastOperator; public Counters() isDot=false; operated=false; equaled=false; st

2、oredNumber=0; lastOperator=?; panel=new Panel(); tf=new TextField(); b=new Button10; for(int i=0;i10;i+)bi=new Button(+i); add=new Button(+); sub=new Button(-); mul=new Button(*); div=new Button(/); cle=new Button(Cle); equ=new Button(=); dot=new Button(.); two=new Button(N(2); sqr=new Button(); tse

3、x=new Button(N(16); this.add(tf,BorderLayout.NORTH); this.add(panel,BorderLayout.CENTER); panel.setLayout(new GridLayout(5,4,10,10); panel.add(b1); panel.add(b2); panel.add(b3); panel.add(add); panel.add(b4); panel.add(b5); panel.add(b6); panel.add(sub); panel.add(b7); panel.add(b8); panel.add(b9);

4、panel.add(mul); panel.add(b0); panel.add(dot); panel.add(sqr); panel.add(div); panel.add(two); panel.add(tsex); panel.add(cle); panel.add(equ); this.setTitle(计算器); this.setSize(250,350); this.setVisible(true); for(int i=0;i10;i+)bi.addActionListener(new Monitor(); add.addActionListener(new Monitor()

5、; sub.addActionListener(new Monitor(); mul.addActionListener(new Monitor(); div.addActionListener(new Monitor(); dot.addActionListener(new Monitor(); sqr.addActionListener(new Monitor(); equ.addActionListener(new Monitor(); cle.addActionListener(new Monitor(); this.addWindowListener(new WindowAdapte

6、r() public void windowClosing(WindowEvent e) System.exit(0); ); two.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) int temp=Integer.parseInt(tf.getText(); tf.setText(+Integer.toBinaryString(temp); ); tsex.addActionListener(new ActionListener() public void actionPer

7、formed(ActionEvent e) int temp=Integer.parseInt(tf.getText(); tf.setText(+Integer.toHexString(temp); ); class Monitor implements ActionListener public void actionPerformed(ActionEvent e) Button btn=(Button)e.getSource(); if(btn=cle) tf.setText(0); isDot=false; storedNumber=0; lastOperator=?; else if

8、(btn=equ) operate(=); equaled=true; else if(btn=add) operate(+); equaled=false; else if(btn=sub) operate(-); equaled=false; else if(btn=mul) operate(*); equaled=false; else if(btn=div) operate(/); equaled=false; else if(btn=sqr) operate(s); operate(=); equaled=true; else if(equaled) storedNumber=0;

9、for(int i=0;i10;i+) if(btn=bi) if(tf.getText().equals(0) tf.setText(+i); else if(!operated) tf.setText(tf.getText()+i); else tf.setText(+i); operated=false; if(btn=dot&!isDot) tf.setText(tf.getText()+.); isDot=true; public void operate(char operator) double currentNumber = Double.valueOf(tf.getText(

10、).doubleValue(); if (lastOperator = ?) storedNumber = currentNumber; else if (lastOperator = +) storedNumber += currentNumber; else if (lastOperator = -) storedNumber -= currentNumber; else if (lastOperator = *) storedNumber *= currentNumber; else if (lastOperator = /) storedNumber /= currentNumber; else if (lastOperator = s) storedNumber = Math.sqrt(currentNumber); else if (lastOperator = = & equaled) storedNumber = currentNumber; tf.setText( + storedNumber); operated = true; lastOperator = operator; public static void main(String args) new Counters(); 赞同11| 评论(1)

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 生活休闲 > 社会民生

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号