Java可进行四则运算的计算器Word文件下载.docx
《Java可进行四则运算的计算器Word文件下载.docx》由会员分享,可在线阅读,更多相关《Java可进行四则运算的计算器Word文件下载.docx(19页珍藏版)》请在冰豆网上搜索。
jf.setResizable(false);
//设置窗体大小不可更改
jf.setLocation(500,200);
//设置窗口初始位置
jf.setVisible(true);
//可以显示
/*=================定义文本框================*/
finalJTextFieldjtext=newJTextField();
//创建一个文本框
jtext.setText("
0"
//初始化为空
jtext.setHorizontalAlignment(JTextField.RIGHT);
//设置文本框右对齐
jtext.setEditable(false);
//设置文本框不可编辑
/*==============定义按钮=====================*/
//-------CE----BackSpace
JButtonjbCE,jbBack;
//定义控制按钮
//-------1----2--3---4---5---6---7---8---9---0
JButtonjb1,jb2,jb3,jb4,jb5,jb6,jb7,jb8,jb9,jb0;
//定义数字按钮
//--------加----减----乘-----除----乘方-左括号-右括号--小数点--等号
JButtonjbAdd,jbLess,jbMul,jbDvs,jbPow,jbLpar,jbRpar,jbDpoi,jbEqs;
//定义符号
/*==============创建组件=============*/
jbCE=newJButton("
CE"
jbBack=newJButton("
BackSpace"
jb7=newJButton("
7"
jb8=newJButton("
8"
jb9=newJButton("
9"
jbAdd=newJButton("
+"
jbPow=newJButton("
^"
jb4=newJButton("
4"
jb5=newJButton("
5"
jb6=newJButton("
6"
jbLess=newJButton("
-"
jbLpar=newJButton("
("
jb1=newJButton("
1"
jb2=newJButton("
2"
jb3=newJButton("
3"
jbMul=newJButton("
*"
jbRpar=newJButton("
)"
jb0=newJButton("
jbDpoi=newJButton("
."
jbDvs=newJButton("
/"
jbEqs=newJButton("
="
/*===============添加组件=============*/
jf.add(jtext);
jf.add(jbCE);
jf.add(jbBack);
jf.add(jb7);
jf.add(jb8);
jf.add(jb9);
jf.add(jbAdd);
jf.add(jbPow);
jf.add(jb4);
jf.add(jb5);
jf.add(jb6);
jf.add(jbLess);
jf.add(jbLpar);
jf.add(jb1);
jf.add(jb2);
jf.add(jb3);
jf.add(jbMul);
jf.add(jbRpar);
jf.add(jb0);
jf.add(jbDpoi);
jf.add(jbDvs);
jf.add(jbEqs);
/*=========================布局=====================*/
jtext.setBounds(10,50,270,25);
//第一行
jbCE.setBounds(10,85,120,40);
//第二行
jbBack.setBounds(140,85,140,40);
jb7.setBounds(10,130,50,40);
//第三行
jb8.setBounds(65,130,50,40);
jb9.setBounds(120,130,50,40);
jbAdd.setBounds(175,130,50,40);
jbLpar.setBounds(230,130,50,85);
jb4.setBounds(10,175,50,40);
//第四行
jb5.setBounds(65,175,50,40);
jb6.setBounds(120,175,50,40);
jbLess.setBounds(175,175,50,40);
jb1.setBounds(10,220,50,40);
//第五行
jb2.setBounds(65,220,50,40);
jb3.setBounds(120,220,50,40);
jbMul.setBounds(175,220,50,40);
jbRpar.setBounds(230,220,50,85);
jb0.setBounds(10,265,50,40);
//第六行
jbDpoi.setBounds(65,265,50,40);
jbEqs.setBounds(120,265,50,40);
jbDvs.setBounds(175,265,50,40);
/*==========设置组件颜色============*/
jf.setBackground(SystemColor.white);
jbCE.setBackground(SystemColor.LIGHT_GRAY);
jbBack.setBackground(SystemColor.LIGHT_GRAY);
jb0.setBackground(SystemColor.LIGHT_GRAY);
jb1.setBackground(SystemColor.LIGHT_GRAY);
jb2.setBackground(SystemColor.LIGHT_GRAY);
jb3.setBackground(SystemColor.LIGHT_GRAY);
jb4.setBackground(SystemColor.LIGHT_GRAY);
jb5.setBackground(SystemColor.LIGHT_GRAY);
jb6.setBackground(SystemColor.LIGHT_GRAY);
jb7.setBackground(SystemColor.LIGHT_GRAY);
jb8.setBackground(SystemColor.LIGHT_GRAY);
jb9.setBackground(SystemColor.LIGHT_GRAY);
jbAdd.setBackground(SystemColor.LIGHT_GRAY);
jbLess.setBackground(SystemColor.LIGHT_GRAY);
jbMul.setBackground(SystemColor.LIGHT_GRAY);
jbDvs.setBackground(SystemColor.LIGHT_GRAY);
jbRpar.setBackground(SystemColor.LIGHT_GRAY);
jbLpar.setBackground(SystemColor.LIGHT_GRAY);
jbEqs.setBackground(SystemColor.LIGHT_GRAY);
jbDpoi.setBackground(SystemColor.LIGHT_GRAY);
/*===============设置文本颜色==============*/
jbCE.setForeground(SystemColor.BLUE);
jbBack.setForeground(SystemColor.RED);
jb0.setForeground(SystemColor.BLACK);
jb1.setForeground(SystemColor.BLACK);
jb2.setForeground(SystemColor.BLACK);
jb3.setForeground(SystemColor.BLACK);
jb4.setForeground(SystemColor.BLACK);
jb5.setForeground(SystemColor.BLACK);
jb6.setForeground(SystemColor.BLACK);
jb7.setForeground(SystemColor.BLACK);
jb8.setForeground(SystemColor.BLACK);
jb9.setForeground(SystemColor.BLACK);
jbDpoi.setForeground(SystemColor.BLACK);
jbAdd.setForeground(SystemColor.BLACK);
jbLess.setForeground(SystemColor.BLACK);
jbMul.setForeground(SystemColor.BLACK);
jbDvs.setForeground(SystemColor.BLACK);
jbRpar.setForeground(SystemColor.BLACK);
jbLpar.setForeground(SystemColor.BLACK);
jbEqs.setForeground(SystemColor.BLACK);
/*=============设置按钮的监听事件=========*/
//按键CE的监听
jbCE.addActionListener(newActionListener(){
publicvoidactionPerformed(ActionEvente){
fh=true;
//标志可以输入小数点
count=0;
//括号计数器归零
jtext.setText("
//把文本框中的数据清零
}
});
//按键Backspace的监听
jbBack.addActionListener(newActionListener(){
publicvoidactionPerformed(ActionEvente){
Stringstr;
//用于保存文本框中的字符
intleng=jtext.getText().length();
//获取当前文本框中字符串的长度
str=jtext.getText();
//把文本框中的字符赋值给变量str
if(leng!
=1){//如果文本框中字符串的长度为不为"
if(str.substring(leng-1,leng).equals("
)){//如果文本框中最后一个字符是"
count=count-1;
//删除左括号,括号计数器减一
}
count=count+1;
//删除右括号后,括号计数器加一
)){//如果文本框中最后一个字符是小数点
fh=true;
//则删除此小数点后,允许输入小数点
jtext.setText(str.substring(0,leng-1));
//文本框退格一次
}
else{//如果文本框中的字符长度等于"
那么直接把文本框中的字符换成“0”
jtext.setText("
//按键0的监听
jb0.addActionListener(newActionListener(){
intleng=jtext.getText().length();
//获得当前文本框中字符串的长度
Stringmsg1,msg2;
//用于保存截取的字符
Stringstr=jtext.getText();
msg1=str.substring(0,leng);
//截取文本框中所有的字符
if(pd||msg1.equals("
)){//如果标志位允许清零,或者文本框中只有一个字符“0”
jtext.setText("
"
//则把文本框中的字符清零
pd=false;
//清零标志位重新设置为禁止
msg2=str.substring(leng-1,leng);
//截取文本框中最后一个字符
if(!
msg2.equals("
)){//如果最后一位字符不是"
if((!
(msg2.equals("
)))){//如果最后一位字符不是"
则可以输入“0”
jtext.setText(jtext.getText()+"
//则把“0”输入文本框
}
}
//按键1的监听
jb1.addActionListener(newActionListener(){
))){//如果最后一位字符不是"
则可以输入“1”
//把“1”输入到文本框
});
//按键2的监听
jb2.addActionListener(newActionListener(){
则可以输入“2”
//把“2”输入到文本框
//按键3的监听
jb3.addActionListener(newActionListener(){
则可以输入“3”
//把“3”输入到文本框
//按键4的监听
jb4.addActionListener(newActionListener(){
则可以输入“4”
//把“4”输入到文本框
//按键5的监听
jb5.addActionListener(newActionListener(){
则可以输入“5”
//把“5”输入到文本框
//按键6的监听
jb6.addActionListener(newActionListener(){
intleng=j