版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
合肥工业大学课程设计设计题目计算器设计学生姓名学号专业班级电子商务指导教师聂会星2011年12月设计题目计算器设计成绩课程设计主要内容一、需求:菜市场卖菜阿姨用的计算器。功能:简单的加减乘除,但不能连加连乘二、软件1、JDK(Java软件开发工具集)2、JCreator3、windows操作系统三、程序类说明1、Calculator类(作为程序入口)main方法(定义并初始化frame框架)setDefaultCloseOperation方法(ButtonFrame的方法,使在点击框架关闭键时框架自动关闭并推出进程)show方法(ButtonFrame的方法,使框架可以显示)2、ButtonFrame类(设计框架尺寸,创建面板,按钮,设置整体布局。创建监听器,使计算器能够正常工作)ButtonFrame构造方法(设计框架尺寸,创建面板,按钮,设置整体布局。)setTitle方法(设置框架主标题)setSize方法(设置框架大小)textPanel.add(addText);(文本面板中添加文本)contentPane.add(textPanel,BorderLayout.NORTH);(将文本面板添加到内容面板中,定义其位置为北)addButton.addActionListener()(为按钮创建并注册监听器)对象:面板:textPanelcontentPane文本框:addText按钮:addButton1,addButton2,addButton3,addButton4, addButton5,addButton6,addButton7,addButton8, addButton9,addButton10,addButton11,addButton12, addButton13,addButton14,addButton15, addButton19,addButton20,addButton21;actionPerformed方法(接口ActionListener的方法,对其进行覆盖,实现计算器基本功能)Objects=a.getSource()(事件源捕获窗口事件)Double.parseDouble(addText.getText().trim())(将由按钮输入的数字转化为double型)对象:Stringz=newString(""); doublem,k; charf;四、程序源代码:(见附页)五、体会:六十个课时的Java课程设计三个星期就结束了,有点快,但是很有意义,老师让我们设计计算器和另外的其他程序中的一个,开始的时候,我们开始分组,很荣幸我和我的组员一直相互协调合作,分工明确,彼此之间非常融洽。俗话说:团结就是力量,我们分工合作,一人负责查课本上的相关知识,一个人从百度上搜索相关程序,我们得到足够多的资料后,仔细研究并开展了讨论,然后开始著手编写程序,等程序编写好了,运行时出现错误,我们一起解决错误,或找指导老师帮助解决。整个过程有序且有效地进行着,开始的时候,我们都认为我们不可能作出这样的程序,但事实证明我们团结在一起的强大。Java是一门很有意思的课,其强大的功能征服了我,我开始慢慢喜欢上了它,我希望继续努力学习Java的相关知识,并能在其领域达到一定的高度。指导教师评语建议:从学生的工作态度、工作量、设计(论文)的创造性、学术性、实用性及书面表达能力等方面给出评价。附页:计算机源程序代码:importjava.awt.*;importjava.awt.event.*;importjavax.swing.*;publicclassCalculator1{ publicstaticvoidmain(String[]args) { ButtonFrameframe=newButtonFrame(); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.show(); }}classButtonFrameextendsJFrameimplementsActionListener//继承JFrame类,实现ActionListener接口{ publicButtonFrame() { setTitle("Calculator"); setSize(200,250); JPanelpanel=newJPanel(); ContainercontentPane=getContentPane();//得到内容框个对象 contentPane.add(panel);JPaneltextPanel=newJPanel(); addText=newJTextField("",16); addText.setHorizontalAlignment(JTextField.RIGHT);//设置文本的水平对齐方式textPanel.add(addText);contentPane.add(textPanel,BorderLayout.NORTH); addButton1=newJButton("1"); addButton1.addActionListener(this);//将当前对象实例作为动作的监听器 addButton2=newJButton("2"); addButton2.addActionListener(this); addButton3=newJButton("3"); addButton3.addActionListener(this); addButton4=newJButton("4"); addButton4.addActionListener(this); addButton5=newJButton("5"); addButton5.addActionListener(this); addButton6=newJButton("6"); addButton6.addActionListener(this); addButton7=newJButton("7"); addButton7.addActionListener(this); addButton8=newJButton("8"); addButton8.addActionListener(this); addButton9=newJButton("9"); addButton9.addActionListener(this); addButton10=newJButton("0"); addButton10.addActionListener(this); addButton11=newJButton("+"); addButton11.addActionListener(this); addButton12=newJButton("-"); addButton12.addActionListener(this); addButton13=newJButton("*"); addButton13.addActionListener(this); addButton14=newJButton("/"); addButton14.addActionListener(this); addButton15=newJButton("="); addButton15.addActionListener(this); addButton19=newJButton("."); addButton19.addActionListener(this); addButton20=newJButton("OFF"); addButton20.addActionListener(this); addButton21=newJButton("ON"); addButton21.addActionListener(this); panel.add(addButton20); panel.add(addButton21); panel.add(addButton1);panel.add(addButton2); panel.add(addButton3); panel.add(addButton11); panel.add(addButton4); panel.add(addButton5); panel.add(addButton6); panel.add(addButton12); panel.add(addButton7); panel.add(addButton8); panel.add(addButton9); panel.add(addButton13); panel.add(addButton10); panel.add(addButton19); panel.add(addButton15); panel.add(addButton14); } JTextFieldaddText;//单行文本输入框 JButtonaddButton1,addButton2,addButton3,addButton4, addButton5,addButton6,addButton7,addButton8, addButton9,addButton10,addButton11,addButton12, addButton13,addButton14,addButton15, addButton19,addButton20,addButton21; Stringz=newString(""); doublem,k; charf;publicvoidactionPerformed(ActionEventa) { Objects=a.getSource();//事件源捕获窗口事件 if(s==addButton1) z=z+"1"; if(s==addButton2) z=z+"2"; if(s==addButton3) z=z+"3"; if(s==addButton4) z=z+"4"; if(s==addButton5) z=z+"5"; if(s==addButton6) z=z+"6"; if(s==addButton7) z=z+"7"; if(s==addButton8) z=z+"8"; if(s==addButton9) z=z+"9"; if(s==addButton10) z=z+"0"; if(s==addButton19) z=z+"."; if(s==addButton21) z="0";if(s==addButton20) z=""; addText.setText(""+z); if(s==addButton11) {f='+'; m=Double.parseDouble(addText.getText().trim());//获取文本内容,并转换为Double类型 z="";} if(s==addButton12) {f='-'; m=Double.parseDouble(addText.getText().trim()); z="";} if(s==addButton13) {f='*'; m=Double.parseDouble(addText.getText().trim()); z="";} if(s==addButton14) {f='/'; m=Double.parseDouble(addText.get
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 二零二五年度全款购入进口跑车合同范本3篇
- 二零二五年度企业与个人投资回报对赌协议3篇
- 二零二五年度员工试用期工作内容调整及考核标准协议3篇
- 二零二五年度电商平台商家会员返利合同3篇
- 2025年度新能源汽车产业链投资基金合作协议3篇
- 2025年度公司股东内部关于企业并购整合的专项协议3篇
- 2025年度绿色能源项目分摊协议3篇
- 二零二五年度新能源汽车充电桩建设投资入股合同3篇
- 2025通信销售合同
- 2025年农村土地永久转让与农村电商合作框架合同3篇
- 心理健康教育(共35张课件)
- GB/T 44271-2024信息技术云计算边缘云通用技术要求
- 工业项目投资估算及财务评价附表(有计算公式)
- 2024-2030年中国Micro LED行业发展现状调研及市场前景趋势报告
- 高中英语外研版 单词表 必修2
- 2024-2030年中国蓖麻行业市场发展趋势与前景展望战略分析报告
- 2025国家开放大学电大专科《基础写作》期末试题及答案(试卷号2412)
- 用所给词的适当形式填空(专项训练)人教PEP版英语六年级上册
- 2024年全国职业院校技能大赛“新型电力系统与维护”赛项考试题库-中(多选题)
- DL∕T 677-2018 发电厂在线化学仪表检验规程
- 马克思主义与社会科学方法论课后思考题答案全
评论
0/150
提交评论