java实训报告1.docx
- 文档编号:15860102
- 上传时间:2023-07-08
- 格式:DOCX
- 页数:23
- 大小:74.37KB
java实训报告1.docx
《java实训报告1.docx》由会员分享,可在线阅读,更多相关《java实训报告1.docx(23页珍藏版)》请在冰点文库上搜索。
java实训报告1
四川机电职业技术学院
《JAVA课程设计》
题目:
简易计算器设计
班级:
10网络六班
姓名:
林璐
指导教师:
向模军
2011年1月2日
课程设计任务书
一、设计任务及要求:
采用项目化综合教程进行课程设计,制作一个简单的计算器,要求实现事件响应,完成各个部分,并进行调试,编写课程设计报告。
1、设计任务要求
(1)进一步巩固和加深“JAVA课程设计”课程的基本知识,了解JAVA设计知识在实际中的应用。
(2)综合运用“JAVA设计”课程和先修课程的理论及生产实际知识去分析和解决问题,进行的相关训练。
(3)学习JAVA设计的一般方法,了解和掌握JAVA在实现对象响应,培养正确的设计思想和分析问题、解决问题的能力。
3、设计报告要求
1)、设计报告要有封面、有页码;
2)、设计报告必须在2012年1月2日提交;
3)、设计报告必须交打印文档。
指导教师签名
年月日
二、指导教师评语:
指导教师签名
年月日
三、成绩评定
指导教师签名
年月日
目录
一、课题名称:
5
二、设计时间:
6
三、设计环境7
四、设计目的:
8
4.1进一步巩固和加深“JAVA课程设计”课程的基本知识,了解JAVA知识在实际中的应用。
8
4.2综合运用“JAVA课程设计”课程和先修课程的理论及生产实际知识去分析和解决问题,进行的相关训练。
8
五、设计要求9
5.1独立完成课程设计。
9
5.2要求熟练掌握JCreator的操作使用。
9
5.3熟练掌握JAVA设计基本方法。
9
六、设计内容与步骤10
6.1设计一个简单的计算器面板,添加相应的内容。
10
6.2在计算器面板上添加菜单及菜单项目11
6.3实现计算器上数字按钮的响应13
6.4添加标签、内容、按钮16
6.5完成计算器的所有制作,实现计算器的所有功能。
17
七、实训总结22
参考文献23
致谢24
一、课题名称:
JAVA实训
二、设计时间:
2011年12月26日——2011年1月2日
时间安排:
12月26日——1月2日设计、编码
1月2日:
书写设计报告、提交
三、设计环境
硬件:
多媒体机房
软件:
JCreatorprov4.0
四、设计目的:
4.1进一步巩固和加深“JAVA课程设计”课程的基本知识,了解JAVA知识在实际中的应用。
4.2综合运用“JAVA课程设计”课程和先修课程的理论及生产实际知识去分析和解决问题,进行的相关训练。
五、设计要求
5.1独立完成课程设计。
5.2要求熟练掌握JCreator的操作使用。
5.3熟练掌握JAVA设计基本方法。
六、设计内容与步骤
6.1设计一个简单的计算器面板,添加相应的内容。
importjava.util.*;
importjava.awt.*;
importjava.awt.event.*;
importjavax.swing.*;
publicclassCal1extendsJFrame
{
JPanelpl;
JTextFieldtxt;
String[]a={"","Back","Clear","","7","8","9","","4","5","6","","1","2","3","","0","+/-",".",""};
JButton[]b=newJButton[20];
publicvoidCalculater()
{
txt=newJTextField();
txt.setHorizontalAlignment(JTextField.RIGHT);
add(txt,BorderLayout.NORTH);
pl=newJPanel();
pl.setLayout(newGridLayout(5,4,1,1));
add(pl,BorderLayout.CENTER);
for(inti=0;i { b[i]=newJButton(a[i]); pl.add(b[i]); } setBounds(150,150,270,210); setTitle("简易计算器"); setResizable(false); setVisible(true); setDefaultCloseOperation(EXIT_ON_CLOSE); } publicstaticvoidmain(Stringargs[]) { newCal1().Calculater(); } } 运行效果如图1-1 图片1 做一个简单的计算器界面,界面布局和内容应该和一般的计算器差不多,能实现加减乘除,清除后退这些简单的功能就可以。 6.2在计算器面板上添加菜单及菜单项目 importjava.util.*; importjava.awt.*; importjava.awt.event.*; importjavax.swing.*; publicclassCal2extendsJFrame { JMenuBarmbar; JMenum1,m2; JRadioButtonMenuItemm11,m12; JMenuItemm21,m22; ButtonGroupbg; JPanelpl; JTextFieldtxt; String[]a={"","Back","Clear","","7","8","9","","4","5","6","","1","2","3","","0","+/-",".",""}; JButton[]b=newJButton[20]; publicvoidCalculater() { mbar=newJMenuBar(); bg=newButtonGroup(); m1=newJMenu("查看"); m11=newJRadioButtonMenuItem("科学型",true); m12=newJRadioButtonMenuItem("标准型"); bg.add(m11); bg.add(m12); m1.add(m11); m1.add(m12); mbar.add(m1); m2=newJMenu(""); m21=newJMenuItem(""); m22=newJMenuItem(""); m2.add(m21); m2.add(m22); mbar.add(m2); txt=newJTextField(); txt.setHorizontalAlignment(JTextField.RIGHT); add(txt,BorderLayout.NORTH); pl=newJPanel(); pl.setLayout(newGridLayout(5,4,1,1)); add(pl,BorderLayout.CENTER); for(inti=0;i { b[i]=newJButton(a[i]); pl.add(b[i]); } setBounds(150,150,270,210); setTitle("简易计算器"); setResizable(false); setJMenuBar(mbar); setVisible(true); setDefaultCloseOperation(EXIT_ON_CLOSE); } publicstaticvoidmain(Stringargs[]) { newCal2().Calculater(); } } 运行效果如图2-2 图片2 添加菜单栏: 查看、帮助,并且添加菜单项目列表,点击菜单项目不作出响应 6.3实现计算器上数字按钮的响应 importjava.util.*; importjava.awt.*; importjava.awt.event.*; importjavax.swing.*; publicclassCal3extendsJFrameimplementsActionListener { JMenuBarmbar; JMenum1,m2; JRadioButtonMenuItemm11,m12; JMenuItemm21,m22; ButtonGroupbg; JPanelpl; JTextFieldtxt; String[]a={"","Back","Clear","","7","8","9","","4","5","6","","1","2","3","","0","+/-",".",""}; JButton[]b=newJButton[20]; publicvoidCalculater() { mbar=newJMenuBar(); bg=newButtonGroup(); m1=newJMenu("查看"); m11=newJRadioButtonMenuItem("科学型",true); m12=newJRadioButtonMenuItem("标准型"); bg.add(m11); bg.add(m12); m1.add(m11); m1.add(m12); mbar.add(m1); m2=newJMenu("帮助"); m21=newJMenuItem("反馈"); m22=newJMenuItem("关于作者"); m2.add(m21); m2.add(m22); mbar.add(m2); txt=newJTextField(); txt.setHorizontalAlignment(JTextField.RIGHT); add(txt,BorderLayout.NORTH); pl=newJPanel(); pl.setLayout(newGridLayout(5,4,1,1)); add(pl,BorderLayout.CENTER); for(inti=0;i { b[i]=newJButton(a[i]); b[i].addActionListener(this); pl.add(b[i]); } setBounds(150,150,270,210); setTitle("简易计算器"); setResizable(false); setJMenuBar(mbar); setVisible(true); setDefaultCloseOperation(EXIT_ON_CLOSE); } publicstaticvoidmain(Stringargs[]) { newCal3().Calculater(); } publicvoidactionPerformed(ActionEvente) { JButtonbv=(JButton)e.getSource(); Stringsc=txt.getText(); if(bv==b[1]) if(sc.length()>=1) txt.setText(sc.substring(0,sc.length()-1)); if(bv==b[2]) txt.setText(""); if(bv==b[4]||bv==b[5]||bv==b[6]||bv==b[8]||bv==b[9]||bv==b[10]||bv==b[12]||bv==b[13]||bv==b[14]) txt.setText(sc+bv.getText()); if(bv==b[16]) if(sc.length()>=1) txt.setText(sc+"0"); if(bv==b[17]) { booleanisNumber=true; if(sc.length()==0) isNumber=false; for(inti=0;i if(! (sc.charAt(i)>='0'&&sc.charAt(i)<='9'||sc.charAt(i)=='.'||sc.charAt(i)=='-')) { isNumber=false; break; } if(isNumber==true) if(sc.charAt(0)=='-') txt.setText(sc.substring(1,sc.length())); else txt.setText('-'+sc); } if(bv==b[18]) { booleanclickable=true; if(sc.length()==0) clickable=false; for(inti=0;i if('.'==txt.getText().charAt(i)) { clickable=false; break; } if(clickable==true) txt.setText(sc+"."); } } } 运行效果如图3 图片3 实现数字和清除、后退按钮的响应,此时只能响应数字键。 6.4添加标签、内容、按钮 importjava.util.*; importjava.awt.*; importjava.awt.event.*; importjavax.swing.*; publicclassCal4extendsJFrameimplementsActionListener { JMenuBarmbar; intn,shu=(int)Math.random()*100; JLabellab=newJLabel(""); JTextFieldtxt=newJTextField(""); JButtonbtn=newJButton(""); publicvoidCalculater() { add(lab); add(txt); add(btn); btn.addActionLister(this); setBounds(150,150,270,210); setTitle("简易计算器"); setResizable(false); setJMenuBar(mbar); setVisible(true); setDefaultCloseOperation(EXIT_ON_CLOSE); } publicstaticvoidmain(Stringargs[]) { newCal4().Calculater(); } publicvoidactionPerformed(ActionEvente) { } } 运行效果如图4-4 图片4 这一步主要是完成计算器的个数字键的响应,但还不能响应运算符,计算结果,一个简单的界面就这样产生了 6.5完成计算器的所有制作,实现计算器的所有功能。 importjava.util.*; importjava.awt.*; importjava.awt.event.*; importjavax.swing.*; publicclassCal5extendsJFrameimplementsActionListener { intn; doublenum1,num2; JMenuBarmbar; JMenum1,m2; JRadioButtonMenuItemm11,m12; JMenuItemm21,m22; ButtonGroupbg; JPanelpl; JTextFieldtxt; String[]a={"","Back","Clear","","7","8","9","","4","5","6","","1","2","3","","0","+/-",".",""}; JButton[]b=newJButton[20]; publicvoidCalculater() { mbar=newJMenuBar(); bg=newButtonGroup(); m1=newJMenu("查看"); m11=newJRadioButtonMenuItem("科学型",true); m12=newJRadioButtonMenuItem("标准型"); bg.add(m11); bg.add(m12); m1.add(m11); m1.add(m12); mbar.add(m1); m2=newJMenu("帮助"); m21=newJMenuItem("反馈"); m22=newJMenuItem("关于作者"); m2.add(m21); m2.add(m22); m22.addActionListener(newMyActLister()); mbar.add(m2); txt=newJTextField(); txt.setHorizontalAlignment(JTextField.RIGHT); add(txt,BorderLayout.NORTH); pl=newJPanel(); pl.setLayout(newGridLayout(5,4,1,1)); add(pl,BorderLayout.CENTER); for(inti=0;i { b[i]=newJButton(a[i]); b[i].addActionListener(this); pl.add(b[i]); } setBounds(150,150,270,210); setTitle("简易计算器"); setResizable(false); setJMenuBar(mbar); setVisible(true); setDefaultCloseOperation(EXIT_ON_CLOSE); } publicstaticvoidmain(Stringargs[]) { newCal5().Calculater(); } publicvoidactionPerformed(ActionEvente) { JButtonbv=(JButton)e.getSource(); Stringsc=txt.getText(); if(bv==b[1]) if(sc.length()>=1) txt.setText(sc.substring(0,sc.length()-1)); if(bv==b[2]) txt.setText(""); if(bv==b[4]||bv==b[5]||bv==b[6]||bv==b[8]||bv==b[9]||bv==b[10]||bv==b[12]||bv==b[13]||bv==b[14]) txt.setText(sc+bv.getText()); if(bv==b[16]) if(sc.length()>=1) txt.setText(sc+"0"); if(bv==b[17]) { booleanisNumber=true; if(sc.length()==0) isNumber=false; for(inti=0;i if(! (sc.charAt(i)>='0'&&sc.charAt(i)<='9'||sc.charAt(i)=='.'||sc.charAt(i)=='-')) { isNumber=false; break; } if(isNumber==true) if(sc.charAt(0)=='-') txt.setText(sc.substring(1,sc.length())); else txt.setText('-'+sc); } if(bv==b[18]) { booleanclickable=true; if(sc.length()==0) clickable=false; for(inti=0;i if('.'==sc.charAt(i)) { clickable=false; break; } if(clickable==true) txt.setText(sc+"."); } if(bv==b[19]||bv==b[15]||bv==b[11]||bv==b[7]) { if(sc.length()! =0) num1=Double.parseDouble(sc); txt.setText(""); } if(bv==b[19])n=1; if(bv==b[15])n=2; if(bv==b[11])n=3; if(bv==b[7])n=4; if(bv==b[3]) { if(sc.length()! =0) num2=Double.parseDouble(sc); switch(n) { case1: txt.setText(String.valueOf(num1+num2));break; case2: txt.setText(St
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- java 报告
![提示](https://static.bingdoc.com/images/bang_tan.gif)