ImageVerifierCode 换一换
格式:DOCX , 页数:32 ,大小:59.92KB ,
资源ID:26525867      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/26525867.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(Java课程设计报告75472506.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

Java课程设计报告75472506.docx

1、Java课程设计报告75472506(此文档为word格式,下载后您可任意编辑修改!)课程设计(大作业)报告课程名称:面向对象程序设计课程设计 设计题目: 设计一个计算器 院 系: 班 级: 设 计 者: 学 号: 指导教师: 设计时间: 2013.1.1.18 课程设计(大作业)任务书姓 名: 院(系):专 业: 学 号任务起止日期:2013.1.1.18课程设计题目:设计一个计算器,具有加减乘除的计算器,可扩展功能课程设计要求:本次课程设计是对前面学过的所有面向对象的编程思想以及编程方法的一个总结、回顾和实践。.开始设计前学生一定要先回顾以前所学的内容,明确本课程设计所要用到的技术点并到网

2、上搜索以及查阅相关的书籍来搜集资料。.通过编写一个基于JAVA的应用系统综合实例,要求学生熟练掌握Java语言设计一个完整的应用程序的设计方法和步骤(软件的分析、设计、调试和总结)。要求每个学生应在规定时间内,在相关软、硬件的环境下,由指导老师指导独立完成各阶段设计任务。工作计划及安排:这次的实验内容是计算器的设计,中间主要涉及的内容有:Java计算器 主类;Java计算器 菜单的创建;Java计算器 功能键定义;Java计算器 数字键盘区定义;Java计算器 计算方法区。1月14号上午在机房进行题目分析,最后确定做的题目,并查找资料。1月14号下午在机房进行基本的题目分工,进行分工工作。我负

3、责计算器图形界面设计方法的实现;耿粉团负责计算器的个功能实现。1月15号在机房进行编写程序,实现各功能。1月16号在机房编写与调试程序以及相关内容的注释。1月17号修改程序的不足之处,并优化程序。指导教师签字 2013年 1月 14 日 课程设计(大作业)成绩学号: 姓名: 指导教师:课程设计题目:设计一个计算器,具有加减乘除的计算器,可扩展功能总结:在实训的这五天期间,使我弄懂许多问题,例如实现接口,图形界面设计等。比如说实现事件响应的步骤有:第一:注册监听器; 第二:触发; 第三:事件响应。查询API手册也使我明白更多函数的功能与应用,容器,添加面板、文本框、按钮、菜单等等。JButton

4、,JMenu,JMenuItem,JTextField,StringBuffer。还有窗口框架的设计,Border布局、Grid布局和Flow布局,只用单一的布局是弄不好一个完美的窗口框架的,所以要综合使用布局管理。指导教师评语:成绩:填表时间:2013.1.20 指导教师签名:洪孙焱目录课程设计(大作业)报告 4一、题目要求 4、界面设计 4、计算器的基本功能 4二、 需求分析 4三、 题目分析 5四、分工设计 5、程序代码 5、运行结果截图 9五、总体设计 10流程图 10UML图 11六、详细设计和主要代码 11七、运行结果 21八、总结 21九、参考文献 22课程设计(大作业)报告一、

5、题目要求、界面设计首先按设计要求实现其基本功能,其次设计布局,按照GridLayoutd的布局方法,将空间划分为由行和列组成的网格单元,每个单元放一个组件,网格单元大小可不同,尽量将相同属性的按钮放在一个区域,方便操作。、计算器的基本功能:加法:两个数据进行加操作,可以为小数。减法:两个数据进行减操作,可以为负数相减。乘法:两个数相乘操作。除法:两个数相除操作。开平方:对任意一个数进行开平方运算,可以是小数。求余:对任意一个数进行求余运算。倒数:对任意一个数进行倒数运算功能可自行增加。提示:添加相关组件并进行按钮事件处理。2、需求分析在日常生活中经常要用到计算器,比如科学计算器、数值计算、会计

6、业务等,在Applet中实现一个精巧实用的计算器,可以让用户在使用网站服务的同时,可以很方便地进行数据运算,可增加页面的实用性,同时让用户的操作也更方便与快捷。本次实验要求实现一个具有四则运算的计算器,拥有加、减、乘、除、求余、求倒等功能,并且还要求具备清零等功能。3、题目分析计算器功能键的实现 actionPerformed(ActionEvent e)响应整个计算的文本框。这次设计的计算器计算功能主要包括加法、减法、乘法、除法、求平方根、取余,1x将文本框中的数据为它的倒数,sqrt将文本框中的内容求平方根,且有小数点、正负号、求倒数、退格和清零等功能。其中还有一个缓存区,MC的功能是清除

7、缓存区的数据,MR的功能是恢复缓冲区的数到文本框,MS功能是将文本框的数存入缓冲区,M+的功能是将文本框值与缓冲区的数相加但不显示结果。四、分工设计、程序代码public Calculator() f = new JFrame(计算器);创建一个框架Container contentPane = f.getContentPane();菜单的创建JMenuBar mBar = new JMenuBar();实例化mbar菜单mBar.setOpaque(true);mEdit = new JMenu(编辑(E);mCopy = new JMenuItem(复制(C);mEdit.add(mCop

8、y);mPaste = new JMenuItem(粘贴(P);mEdit.add(mPaste);mView = new JMenu(查看(V);mView.add(new JMenuItem(查看分组);mHelp = new JMenu(帮助(H);mHelp.add(new JMenuItem(帮助主题); mHelp.add(new JMenuItem(关于计算器);mBar.add(mEdit);mBar.add(mView);mBar.add(mHelp);f.setJMenuBar(mBar);contentPane.setLayout(new BorderLayout();使

9、mbar菜单用Border布局JPanel pt = new JPanel();实例化pt容器tText = new JTextField( ,26);pt.add(tText);contentPane.add(pt,BorderLayout.NORTH);把pt容器用Border布局位于北面JPanel pBottom = new JPanel();实例化pBottom容器pBottom.setLayout(new BorderLayout();JPanel pPlef = new JPanel();实例化pPlef容器pPlef.setLayout(new GridLayout();pLe

10、ft容器用Grid布局5行1列,GridLayout以网格形式将组件放在同样大小的单元了bEmptykey = new JButton( );pPlef.add(bEmptykey);功能键定义bLeftkey = new JButton(MC);对象 MC:清除存储器中的数值。bLeftkey.addActionListener(this);注册监听器bLeftkey.setForeground(Color.blue);bLeftkey.setMargin(new Insets();pPlef.add(bLeftkey);bLeftkey = new JButton(MR);MR:将存于存储

11、器中的数显示在计算器的显示框上bLeftkey.addActionListener(this);bLeftkey.setForeground(Color.blue);bLeftkey.setMargin(new Insets();pPlef.add(bLeftkey);bLeftkey = new JButton(MS);MS:将显示框的数值存于存储器中。如果存储器中有数值将会显示M标志bLeftkey.addActionListener(this);bLeftkey.setForeground(Color.blue);bLeftkey.setMargin(new Insets();pPlef

12、.add(bLeftkey);bLeftkey = new JButton(M+);M+:将显示框的数与存储器中的数相加并进行存储。bLeftkey.addActionListener(this);bLeftkey.setForeground(Color.blue);bLeftkey.setMargin(new Insets();pPlef.add(bLeftkey);pBottom.add(pPlef,BorderLayout.WEST);pPlef容器中用Border布局位于西面JPanel pRight = new JPanel();实例化pRight容器pRight.setLayout

13、(new BorderLayout();BorderLayout是在五个区域中排列组件,每个区域包含一个组件JPanel pOn = new JPanel();实例化pOn容器pOn.setLayout(new GridLayout();pOn容器用Grid布局1行3列bLeftkey = new JButton(BackSpace);Backspace退格,删除当前输入数字中的最后一位bLeftkey.addActionListener(this);bLeftkey.setForeground(Color.blue);将bOther的前景色设置为bluebLeftkey.setMargin(

14、new Insets();pOn.add(bLeftkey);bLeftkey = new JButton(CE);CE清除,清除显示的数字bLeftkey.addActionListener(this);bLeftkey.setForeground(Color.blue);pOn.add(bLeftkey);bLeftkey = new JButton(C);C归零,清除当前的计算bLeftkey.addActionListener(this);bLeftkey.setForeground(Color.blue);pOn.add(bLeftkey);数字键盘区定义JPanel pNum =

15、new JPanel();实例化pNum容器pNum.setLayout(new GridLayout();pNum容器用Grid布局4行5列bNumberkey = new JButton(7);bNumberkey.setForeground(Color.blue);bNumberkey.addActionListener(this);bNumberkey.setMargin(new Insets();pNum.add(bNumberkey);在pNum容器中添加按键bNumberbNumberkey = new JButton(8);bNumberkey.setForeground(Co

16、lor.blue);bNumberkey.addActionListener(this);bNumberkey.setMargin(new Insets();pNum.add(bNumberkey);bNumberkey = new JButton(9);bNumberkey.setForeground(Color.blue);bNumberkey.addActionListener(this);bNumberkey.setMargin(new Insets();pNum.add(bNumberkey);bOperator = new JButton();bOperator.setForegr

17、ound(Color.blue);bOperator.addActionListener(this);bOperator.setMargin(new Insets();pNum.add(bOperator);bOperator = new JButton(sqrt);bOperator.addActionListener(this);bOperator.setForeground(Color.blue);bOperator.setMargin(new Insets();pNum.add(bOperator);bNumberkey = new JButton(4);bNumberkey.setF

18、oreground(Color.blue);bNumberkey.addActionListener(this);bNumberkey.setMargin(new Insets();bNumberkey.setHorizontalTextPosition(JButton.LEFT);pNum.add(bNumberkey);bNumberkey = new JButton(5);bNumberkey.setForeground(Color.blue);bNumberkey.addActionListener(this);bNumberkey.setMargin(new Insets();pNu

19、m.add(bNumberkey);bNumberkey = new JButton(6);bNumberkey.setForeground(Color.blue);bNumberkey.addActionListener(this);bNumberkey.setMargin(new Insets();pNum.add(bNumberkey);bOperator = new JButton(*);bOperator.setForeground(Color.blue);bOperator.addActionListener(this);bOperator.setMargin(new Insets

20、();pNum.add(bOperator);bOperator = new JButton(%);bOperator.setForeground(Color.blue);bOperator.addActionListener(this);bOperator.setMargin(new Insets();pNum.add(bOperator);bNumberkey = new JButton(1);bNumberkey.setForeground(Color.blue);bNumberkey.addActionListener(this);bNumberkey.setMargin(new In

21、sets();pNum.add(bNumberkey);bNumberkey = new JButton(2);bNumberkey.setForeground(Color.blue);bNumberkey.addActionListener(this);bNumberkey.setMargin(new Insets();pNum.add(bNumberkey);bNumberkey = new JButton(3);bNumberkey.setForeground(Color.blue);bNumberkey.addActionListener(this);bNumberkey.setMar

22、gin(new Insets();pNum.add(bNumberkey);bOperator = new JButton(-);bOperator.setForeground(Color.blue);bOperator.addActionListener(this);bOperator.setMargin(new Insets();pNum.add(bOperator);bOperator = new JButton(1x);bOperator.setForeground(Color.blue);bOperator.addActionListener(this);pNum.add(bOper

23、ator);bNumberkey = new JButton(0);bNumberkey.setForeground(Color.blue);bNumberkey.addActionListener(this);bNumberkey.setMargin(new Insets();pNum.add(bNumberkey);bOperator = new JButton(+-);按下(+-)键可改变数字的正负值。bOperator.setForeground(Color.blue);bOperator.addActionListener(this);bOperator.setMargin(new

24、Insets();pNum.add(bOperator);bOperator = new JButton(.);bOperator.setForeground(Color.blue);bOperator.addActionListener(this);bOperator.setMargin(new Insets();pNum.add(bOperator);bOperator = new JButton(+);bOperator.setForeground(Color.blue);bOperator.addActionListener(this);bOperator.setMargin(new

25、Insets();pNum.add(bOperator);bOperator = new JButton(=);bOperator.setForeground(Color.blue);bOperator.addActionListener(this);bOperator.setMargin(new Insets();pNum.add(bOperator);pRight.add(pOn,BorderLayout.NORTH);pOn容器中的按键用Border布局位于北面pRight.add(pNum,BorderLayout.SOUTH);pNum容器中的按键用Border布局位于南面pBott

26、om.add(pRight,BorderLayout.EAST);pRight容器中的按键用Border布局位于东面contentPane.add(pBottom,BorderLayout.SOUTH);pBottom容器中的按键用Border布局位于南面f.setDefaultCloseOperation(f.EXIT_ON_CLOSE );f.setSize();指定框架的大小f.setVisible(true);显示框架计算方法区、运行结果截图五、总体设计流程图(运行的过程),UML图(类:常量、方法 类的关系)流程图UML图Calculator+JFrame f+JMenu mEdit

27、+JMenu mView+JMenu mHelp+JMenuItem mCopy+JMenuItem mPaste+JTextField tText+JButton bNumberkey+JButton bOperator+JButton bLeftkey+JButton bEmptykey+int preoper,curOper=0=0+double oper1=0,oper2=0+StringBuffer copyBoard+StringBuffer memory+StringBuffer str+ Calculator() void+actionPerformed(ActionEvent

28、 e) void六、详细设计和主要代码import java.awt.*;import java.awt.event.*;import javax.swing.*;主类public class Calculator implements ActionListener Calculator类继承ActionListener接口的所有常量实现接口JFrame f;定义文本框fJMenu mEdit;定义编辑菜单JMenu mView;定义查看菜单JMenu mHelp;定义帮助菜单JMenuItem mCopy;编辑菜单下实现复制JMenuItem mPaste;编辑菜单下实现粘贴JTextFie

29、ld tText;编辑文本框JButton bNumberkey;定义功能键(操作数)JButton bOperator;定义功能键(运算符“+”,“”等)JButton bLeftkey;定义功能键(运算符“MR”等)JButton bEmptykey;定义功能键int preoper,curOper=0;double oper1=0,oper2=0;操作数StringBuffer copykey=new StringBuffer(20);StringBuffer memory=new StringBuffer(20);StringBuffer str=new StringBuffer();

30、StringBuffer类提供处理字符串缓冲区的方法Java计算器 构造器public Calculator() f = new JFrame(计算器);创建一个框架Container contentPane = f.getContentPane();菜单的创建JMenuBar mBar = new JMenuBar();实例化mbar菜单mBar.setOpaque(true);mEdit = new JMenu(编辑(E);mCopy = new JMenuItem(复制(C);mEdit.add(mCopy);mPaste = new JMenuItem(粘贴(P);mEdit.add(mPaste);mView = new JMenu(查看(V);mView.add(new JMenuItem(查看分组);mHelp = new JMenu(帮助(H);mHelp.add(new JMenuItem(帮助主题);

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1