- 3
- 0
- 约9.3千字
- 约 7页
- 2019-03-30 发布于湖北
- 举报
用JAVA编写计算器程序(模拟Windows计算器)
import java.awt.*;import java.awt.event.*;
public class Calculation extends WindowAdapter implements ActionListener{?double dResult=0;?double dNowInput=0;?double dMemory;?int? n=0; //记载小数位数?int? nOperation=1; // 记录运算符类型?int? nBitsNum=0;? //记录总共输入的位数?boolean alreadyHaveDot=false; //已经有小数点??boolean keyAvailable=true;?boolean alreadyClickedEqueal=false; //是否按下过=??boolean isTempNowInput=false; //是否在计算出结果后直接按运算符将结果赋给了当前输入值???Frame f;?Panel p1,p2,p3,p4,p5,p6;?TextField tf1,tf2;?Button b1,b2,b3,b4,b5,b6,b7,b8,b9,b0;?Button bDiv,bSqrt,bMulti,bMinus,bPercent,bPlus,bReciprocal,bEqual,bDot,bNegative;?Button bBackspace,bCE,bC,bMR,bMS,bMC,bM;? ?public void display()?{? f=new Frame(计算器);? f.setSize(280,213);? f.setLocation(200,200);? f.setBackground(Color.LIGHT_GRAY);? f.setResizable(false);? ? f.setLayout(new BorderLayout(3,3));? ? p1=new Panel(new GridLayout(1,3,5,5));? //用于存放backspace,ce,c三键? p2=new Panel(new GridLayout(4,5,5,5)); //用于存放数字区及附近共20键, 此处间隙设置可能不合理,以后调整? p3=new Panel(new GridLayout(5,1,5,5)); //用于存放MC,MR,MS,M+键及显示M状态文本框,此处间隙设置可能不合理,以后调整? p4=new Panel(new FlowLayout()); //用于存放p1,p2? p5=new Panel(new FlowLayout());? p6=new Panel(new FlowLayout());? p4.add(p1);? p4.add(p2);? ? tf1=new TextField(35);????? //存放显示区? tf1.setText(0.);? tf1.setEditable(false);? p5.add(tf1);? f.add(p5,BorderLayout.NORTH);? f.add(p4,BorderLayout.CENTER);? f.add(p3,BorderLayout.WEST);? ? b1=new Button(1);? b2=new Button(2);? b3=new Button(3);? b4=new Button(4);? b5=new Button(5);? b6=new Button(6);? b7=new Button(7);? b8=new Button(8);? b9=new Button(9);? b0=new Button(0);? ? b1.addActionListener(this);? b2.addActionListener(this);? b3.addActionListener(this);? b4.addActionListener(this);? b5.addActionListener(this);? b6.addActionListener(this);? b7.addActionListener(this);? b8.addActionListener(this);? b9.addActionListener(this);? b0.addActionListener(this);? ? bDiv=new Button(/);? bSqrt=new Butt
原创力文档

文档评论(0)