用JAVA编写计算器程序模拟Windows计算器
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
用JAVA编写计算器程序(模拟Windows计算器)
import java.awt.*;
import ;
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 Button("sqrt");
bMulti=new Button("*");
bMinus=new Button("-");
bPercent=new Button("%");
bPlus=new Button("+");
bReciprocal=new Button("1/x");
bEqual=new Button("=");
bDot=new Button(".");
bNegative=new Button("+/-");
bDiv.addActionListener(this);
bSqrt.addActionListener(this);。