1、J Javaava 课程设计报告课程设计报告 一、设计时间一、设计时间 2012-6-4 至 2012-6-8 二、设计地点二、设计地点 三、设计目的三、设计目的 1、 复习、 巩固 Java 语言的基础知识, 进一步加深对 Java 语言的理解和掌握; 2、课程设计为学生提供了一个既动手又动脑,独立实践的机会,将课本上 的理论知识和实际有机的结合起来,锻炼学生的分析解决实际问题的能力。提高 学生适应实际,实践编程的能力; 3、培养学生在项目开发中团队合作精神、创新意识及能力。 四、设计小组成员四、设计小组成员 五、五、指导老师指导老师 六、设计课题六、设计课题 模仿 Windows 操作系统
2、提供的计算器设计一个能实现计算器简单功能的 Java 程序,计算器具有进行加、减、乘、除、阶乘、指数、正弦、余弦共 8 种运 算的功能。 七、基本思路及关键问题的解决方法七、基本思路及关键问题的解决方法 1、计算器的界面如图所示,框架采用 BorderLayout 布局,内容窗格中添加 了两个面板 pnl1 和 pnl2,他们分别被放置在“North”和“Center”方位。面板 pnl1 采用默认的 FlowLayout 布局并且添加了一个文本框组件和一个按钮,面板 pnl2 采用 GridLayout 布局总共添加 21 个按钮。 2、当按下这个计算器程序中任意一个键时,文本框将会失去输入
3、焦点。所 以应当在按下任意键后,让文本框请求再次获得输入焦点。具体使用的是 JTextField 继承来自 JComponent 类中的 requestFocus 方法。 计算器界面 八、八、算法及流程图算法及流程图 九、调试过程中出现的问题及相应解决办法九、调试过程中出现的问题及相应解决办法 1、程序运行之后只有标题没有内容,经过检查代码才发现没有设置窗口位 置和大小。添加 this.setBounds(400,300,450,240)之后程序运行正常。 2、在编译过程中,经常出现找不到符号的错误,仔细查找后发现是忘记写 分号、相同变量前后写的不一致及中英文符号不注意区分,改过之后程序运行正
4、 常。 十、课程设计心得体会十、课程设计心得体会 此次课程设计让我更加了解熟悉了 Java 中的图形用户界面和它的编程方 式。 在完成课题的过程中也不断充实了自己, 学习到了很多以前没有学到的知识, 收获很大。最大的收获就是对大学学习的总结和培养了解决困难的信心和能力, 使我对所学的专业课有了更为深刻的认识,使得知识得到了巩固和提高。 十一、源程序十一、源程序 import java.awt.*; import java.awt.event.*; import javax.swing.*; public class Calculator extends JFrame implements Ac
5、tionListener JPanel pnl1,pnl2; JTextField textfild; GridLayout grdlyt; JButton b0,b1,b2,b3,b4,b5,b6,b7,b8,b9,bp,bd; JButton badd,bsub,bmul,bdiv,bcos,bsin,bjiecheng,bpow,beql,bclear; String str; boolean end,add,sub,mul,div,cos,sin,jiecheng,pow; double num1,num2; Calculator() super(“计算器“); grdlyt=new
6、GridLayout(3,7,6,6); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);/ 设置 窗口关闭按钮 pnl1=new JPanel(); pnl2=new JPanel(grdlyt); Container cp=this.getContentPane(); cp.add(pnl1,“North“); cp.add(pnl2,“Center“); this.setBounds(400,300,450,240); textfild=new JTextField(“0“,30); textfild.setHorizontalAlignment(JTextField.RIGHT); /数字按钮区 b0=new JButton(“0“); b1=new JButton(“1“); b2=new JButton(“2“); b3=new JButton(“3“); b4=new JButton(“4“); b5=new JButton(“5“); b6=new JButton(“6“