




已阅读5页,还剩2页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
package com.niit.calculator;import java.awt.BorderLayout;import java.awt.Color;import java.awt.GridBagLayout;import java.awt.GridLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.awt.event.ItemEvent;import java.awt.event.ItemListener;import java.awt.event.MouseEvent;import java.awt.event.MouseListener;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JOptionPane;import javax.swing.JPanel;import javax.swing.JTextField;public class Calculator extends JFrameString str1=;String str2=;String str3=;double result=0;double number=0;int count=0;private JPanel pnl1;private JPanel pnl2;private JPanel pnl3;private JPanel pnl4;/文本框private JTextField txt;/按钮private JButton btnBackspace;private JButton btnC;private JButton btnCe;private JButton btn;private String s;public Calculator()this.setLayout(new BorderLayout();this.setTitle(计算器);this.setBounds(100, 100, 350, 300);this.setResizable(false);this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);/初始化组件initcomponent(); /* * 初始化组件 */public void initcomponent()/初始化pnlpnl1=new JPanel();pnl2=new JPanel();pnl3=new JPanel();pnl4=new JPanel();/上面this.add(pnl1,BorderLayout.NORTH);txt=new JTextField();txt.setHorizontalAlignment(JLabel.RIGHT);txt.setColumns(30);pnl1.add(txt);/中间this.add(pnl2,BorderLayout.CENTER);pnl2.setLayout(new BorderLayout();pnl2.add(pnl3,BorderLayout.NORTH);btnBackspace=new JButton(Backspace);btnBackspace.setForeground(Color.red);btnC=new JButton(C);btnC.setForeground(Color.red);btnCe=new JButton(CE);btnCe.setForeground(Color.red);pnl3.add(btnBackspace);pnl3.add(btnC);pnl3.add(btnCe);/下面pnl2.add(pnl4,BorderLayout.CENTER);pnl4.setLayout(new GridLayout(4,6);btn=new JButton24;s=new StringMC,7,8,9,/,sqrt,MR,4,5,6,*,%,MS,1,2,3,-,1/x,M+,0,+/-,.,+,=;for(int i=0;i24;i+)btni=new JButton(si);pnl4.add(btni);/按钮绑定点击监听器btni.addActionListener(new btnListener();btnC.addActionListener(new btnListener();btnBackspace.addActionListener(new btnListener();for(int i=0;i1)count=1;JOptionPane.showMessageDialog(null, 只能有一个点);else/是数字的情况if(str.equals(0)|str.equals(1)|str.equals(2)|str.equals(3)|str.equals(4)|str.equals(5)|str.equals(6)|str.equals(7)|str.equals(8)|str.equals(9)|str.equals(.)/记录数字str1+=str;/将第一个数转化为double类型number=Double.parseDouble(str1);/显示在文本框中txt.setText(str1);catch(NumberFormatException e2)/运算符的情况if(str.equals(+)|str.equals(-)|str.equals(*)|str.equals(/)|str.equals(%)|str.equals(sqrt)|str.equals(1/x)|str.equals(=)|str.equals(+/-)if(!str1.equals()&str1.indexOf(.)=str1.length()-1)JOptionPane.showMessageDialog(null, 最后一位不能为.);elsestr1=;if(str3!=null)if(str2.equals(+)result+=number;else if(str2.equals(-)result-=number;else if(str2.equals(*)result*=number;else if(str2.equals(/)if(number=0)JOptionPane.showMessageDialog(null, 除数不能为0);elseresult=result/number;else if(str2.equals(%)result=result%number;/sqtr情况if(str.equals(sqrt)result=Math.sqrt(number);txt.setText(result+);number=result;if(str.equals(1/x)result=1/number;txt.setText(result+);number=result;if(str.equals(+/-)result=(-number);txt.setText(result+);number=result;str3=1;if(str.equals(=)txt.setText(result+);str3=;number=result;/保存numberresult=number;/保留运算符str2=str;count=0;/c的情况if(str.equals(C)str1=;txt.setText(0);/backspacetryif(str.equals(Backspace)str1=str1.substring(0,str1.length()-1);txt.setText(str1
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 考研政治面试题库及答案
- 农业产业园项目2025年区域农业产业结构优化研究与效益评估
- 基于2025年视角的资源型城市产业升级与绿色发展报告
- 2025年特色主题餐厅餐饮市场区域差异与竞争策略研究报告
- 数字化驱动2025:公路货运行业效率提升与可持续发展报告
- 安全教育培训记录缺失课件
- 共享厨房在促进餐饮消费升级方面的实践与探索报告
- 服装设计师品牌方案
- 租赁物品使用协议格式
- 2025年医药电商平台药品供应链金融合规性分析与运营优化报告
- 德瑞斯D600变频器说明书
- 2025-2030年中国锂电池回收行业市场深度调研及前景趋势与投资研究报告
- 数字化教育资源在跨学科教学中的应用
- JG/T 127-2017建筑门窗五金件滑撑
- T/CGCC 7-2017焙烤食品用糖浆
- 2024福建农信社春季招聘笔试历年典型考题及考点剖析附带答案详解
- 医生重症医学科进修汇报
- DB13(J)-T 8389-2020 被动式超低能耗建筑节能工程施工及质量验收标准
- 月嫂 考试题及答案
- 物质安全资料脱模剂MSDS
- 2025年中国过敏性鼻炎市场研究报告
评论
0/150
提交评论