java 课程设计报告JAVA桌面应用程序设计开发Word下载.docx
- 文档编号:22760153
- 上传时间:2023-02-05
- 格式:DOCX
- 页数:17
- 大小:533.84KB
java 课程设计报告JAVA桌面应用程序设计开发Word下载.docx
《java 课程设计报告JAVA桌面应用程序设计开发Word下载.docx》由会员分享,可在线阅读,更多相关《java 课程设计报告JAVA桌面应用程序设计开发Word下载.docx(17页珍藏版)》请在冰豆网上搜索。
课程名称:
JAVA面向对象程序设计
设计题目:
JAVA桌面应用程序设计开发
完成期限:
自2012年06月20日至2012年07月01日共2周
任
务
及
内
容
设计的任务:
1.使用NetBeans集成开发环境构建Swing的综合应用程序,项目名称为acitonlist;
2.使用NetBeans集成开发环境开发使用复合布局管理器的程序,项目名称为cardmanage;
3.使用NetBeans集成开发环境构建使用GifEncoder编码器程序,项目名称为image;
4.使用NetBeans集成开发环境开发使用表格模型的程序,项目名称为table。
内容包括:
Swing库中包及其功能了解、事件模型基础、Swing常用基本控件、Swing常用高级控件、布局管理器、Swing菜单、Java图像处理、表格的高级应用等。
进
度
安
排
起止日期
工作内容
2012.06.20~2012.06.21
项目acitonlist设计
2012.06.22~2012.06.24
项目cardmanage设计
2012.06.27~2012.06.28
项目image设计
2012.06.29~2012.06.30
项目table设计
2012.07.01
整理资料,书写文档
主
要
参
考
资
料
[1]耿祥义,张跃平.JAVA面向对象程序设计.北京:
清华大学出版社,2010.
[2]吴亚峰,王鑫磊.NetBeans-Java桌面、Web与企业级程序开发祥解.北京:
人民邮电出版社,2007
指导教师(签字):
年月日
系(教研室)主任(签字):
(JAVA桌面应用程序设计开发)
设计说明书
Java面向对象程序设计课程设计
JAVA桌面应用程序设计开发
起止日期:
2012年06月20日至2012年07月01日
学生姓名
颜琰
班级
信息与计算科学102班
学号
10411100211
成绩
指导教师(签字)
理学院
2012年07月04日
项目一:
名片管理系统
项目内容、要求:
实现名片的添加,和查看功能
任务及需求分析:
1)名片管理系统界面布局设计;
2)各种功能的代码实现;
3)运行测试程序,调试纠正运行错误;
4)调试无误,运行,测试具体编辑功能;
5)功能模块设计:
新建一个java图形化界面,用代码实现简单的名片添加和查看的功能;
名片管理系统的模块设计图如下:
1:
首先在swing界面中新建一个如图所示的窗体:
其中,将要实现单选的单选按钮放在同一个按钮组中;
然后,写功能事件,
2.清空事件:
在from对应的类中新建一个清空的clearAll()方法如下:
publicvoidclearAll(){
this.jTextFieldAddress.setText("
"
);
this.jTextFieldPhone.setText(null);
this.jTextFieldName.setText(null);
this.jTextFieldEmail.setText(null);
this.jCheckBoxDance.setSelected(false);
this.jCheckBoxChat.setSelected(false);
this.jCheckBoxSing.setSelected(false);
this.jCheckBoxBasketball.setSelected(false);
this.jCheckBoxFootball.setSelected(false);
this.jCheckBoxVolleyball.setSelected(false);
this.jRadioButtonBachelor.setSelected(false);
this.jRadioButtonDoctor.setSelected(false);
this.jRadioButtonMaster.setSelected(false);
this.jRadioButtonOther.setSelected(false);
}
之后在按钮事件中调用上面的方法,写上下面的代码:
clearAll();
3.爱好,学历选择事件:
在爱好按钮事件中调用卡式布局中的爱好面板并显示出来写上如下代码:
jPanelFavor.setVisible(true);
在学历选择事件中调用卡式布局中的学历面板并显示出来写上如下代码:
jPanelDegree.setVisible(true);
4.添加事件:
在主类中实例化两个类,并导包,代码如下:
importjava.util.*;
//其中包含Vector和Hashtable两个集合
VectorvectorListCard=newVector();
//新建集合对象
HashtablehashCardInfo=newHashtable();
在同包下新建一个类用来映射Swing控件的属性及状态:
命名为CardInfo,新建成员变量,代码如下:
privateStringname;
privateStringaddress;
privateStringphone;
privateStringemail;
privatebooleansingState;
privatebooleandanceState;
privatebooleanchatState;
privatebooleanfootBallState;
privatebooleanbaskeBallState;
privatebooleanvolleyBallState;
privatebooleanbachelorState;
privatebooleanmasterState;
privatebooleandoctorState;
privatebooleanotherState;
并设置getandset方法:
略
在窗体类中新建getCardInfo方法用来获取Swing控件中的属性及状态,代码如下:
publicCardInfogetCardInfo(){
CardInfocardInfo=newCardInfo();
cardInfo.setName(this.jTextFieldName.getText());
cardInfo.setAddress(this.jTextFieldAddress.getText());
cardInfo.setPhone(this.jTextFieldPhone.getText());
cardInfo.setEmail(this.jTextFieldEmail.getText());
cardInfo.setSingState(this.jCheckBoxSing.isSelected());
cardInfo.setChatState(this.jCheckBoxChat.isSelected());
cardInfo.setDanceState(this.jCheckBoxDance.isSelected());
cardInfo.setFootBallState(this.jCheckBoxFootball.isSelected());
cardInfo.setVolleyBallState(this.jCheckBoxVolleyball.isSelected());
cardInfo.setBaskeBallState(this.jCheckBoxBasketball.isSelected());
cardInfo.setBachelorState(this.jRadioButtonBachelor.isSelected());
cardInfo.setDoctorState(this.jRadioButtonDoctor.isSelected());
cardInfo.setMasterState(this.jRadioButtonMaster.isSelected());
cardInfo.setOtherState(this.jRadioButtonOther.isSelected());
returncardInfo;
在添加按钮事件中写上如下代码:
CardInfocardInfo=this.getCardInfo();
hashCardInfo.put(cardInfo.getName(),cardInfo);
vectorListCard.add(cardInfo.getName());
this.jListCardList.setListData(vectorListCard);
this.clearAll();
5.添加新名片事件:
在窗体类中新建setState方法,代码如下:
publicvoidsetState(booleanflag){
this.jListCardList.setEnabled(!
flag);
this.jTextFieldAddress.setEditable(flag);
this.jTextFieldPhone.setEditable(flag);
this.jTextFieldName.setEditable(flag);
this.jTextFieldEmail.setEditable(flag);
this.jButtonAdd.setEnabled(flag);
this.jButtonDelete.setEnabled(flag);
this.jCheckBoxDance.setEnabled(flag);
this.jCheckBoxChat.setEnabled(flag);
this.jCheckBoxSing.setEnabled(flag);
this.jCheckBoxBasketball.setEnabled(flag);
this.jCheckBoxFootball.setEnabled(flag);
this.jCheckBoxVolleyball.setEnabled(flag);
this.jRadioButtonBachelor.setEnabled(flag);
this.jRadioButtonDoctor.setEnabled(flag);
this.jRadioButtonMaster.setEnabled(flag);
this.jRadioButtonOther.setEnabled(flag);
在添加新名片按钮事件中写上如下代码:
setState(true);
clearAll();
6.查看已有名片事件:
在窗体类中新建getCardInfo方法,代码如下:
在查看已有名片事件中写上如下代码:
setState(false);
在名片列表事件中写上如下代码:
StringselectedCardName=(String)jListCardList.getSelectedValue();
CardInfocardInfo=(CardInfo)hashCardInfo.get(selectedCardName);
this.setCardInfo(cardInfo);
其实,在每一个功能完成之后都应该测试的,当然做完之后还得测试,测试结果如下:
点击添加新名片,可输入名片的信息:
点击清空:
将清空你之前的操作
点击添加:
名片列表中就多了一项。
点击查看已有名片:
右边变成不可编辑
再点击名片列表中的姓名:
显示名片信息,但不可编辑。
项目二:
浏览打开特定的文件
1.新建一个java窗体:
如图
2.在java窗体类中并行新建两个类,代码如下:
classTxtFliterextendsFileFilter{
booleanflag;
publicbooleanaccept(Filefile){
if(file.getName().toLowerCase().endsWith("
.txt"
)){
flag=true;
}elseif(file.isDirectory()){
}else{
flag=false;
returnflag;
publicStringgetDescription(){
return"
TXT文件"
;
}
classjavaFliterextendsFileFilter{
.java"
java文件"
3.在主类中导入一下几个包:
importjava.io.*;
importjavax.swing.filechooser.*;
importjavax.swing.*;
4.在打开按钮事件中写上如下代码:
fileChooser.showOpenDialog(this);
FileselectFile=fileChooser.getSelectedFile();
if(selectFile==null)
{
JOptionPane.showMessageDialog(this,"
你没有选择要打开的文件!
"
提示:
JOptionPane.INFORMATION_MESSAGE);
return;
else
intchoose=JOptionPane.showConfirmDialog(this,"
你确定要打开该文件吗"
请确认"
JOptionPane.YES_NO_OPTION,JOptionPane.QUESTION_MESSAGE);
if(choose==JOptionPane.NO_OPTION)
你取消了打开文件!
}else
try
intsize=(int)selectFile.length();
byte[]tempArray=newbyte[size];
FileInputStreamfin=newFileInputStream(selectFile);
fin.read(tempArray);
StringtempString=newString(tempArray);
this.jTextArea1.setText(tempString);
catch(IOExceptione)
e.printStackTrace();
5.测试项目:
如下效果
点击打开:
但只能打开java和txt文件,下面可以选择java文件或txt文件
单击打开想过如下:
单击否效果如下:
如果单击确定,不单击否,效果如下:
此时,已将文件打开在下面的文本域中。
项目测试完毕!
综上所述,是我的两个项目的课程设计报告,谢谢老师的悉心教导,祝老师身体健康,万事如意!
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- java 课程设计报告 JAVA桌面应用程序设计开发 课程设计 报告 桌面 应用 程序设计 开发