java课程设计.docx
- 文档编号:24071712
- 上传时间:2023-05-24
- 格式:DOCX
- 页数:19
- 大小:77.73KB
java课程设计.docx
《java课程设计.docx》由会员分享,可在线阅读,更多相关《java课程设计.docx(19页珍藏版)》请在冰豆网上搜索。
java课程设计
课程设计任务书
题目:
记事本
学号
姓名
专业计算机应用技术
课程Java实用教程
指导教师王琳琳职称
完成时间:
2010年12月----2010年12月
枣庄学院计算机科学系制
课程设计任务书及成绩评定
课程设计的任务和具体要求
1.本课程设计的目的
(1)掌握Java语言的程序设计方法;
(2)理论联系实际,进一步提高学生的软件开发技术;
(3)培养学生分析、解决问题的能力;
(4)提高学生实践论文撰写能力。
2.课程设计的任务及要求
1)基本要求:
(1)熟悉JAVA开发环境,掌握JAVA程序的编译和运行;
(2)掌握JAVA基本编程技术和方法;
(3)掌握GUI图形界面编程技术;
(4)了解异常处理机制。
2)课程设计论文编写要求
(1)理论设计部分以课程设计论文的形式提交,格式必须按照课程设计论文标准
格式进行书写和装订。
(2)课程设计报告(论文)包括目录、设计目的、实现思路、实现步骤、设计心得
参考文献、附录等
指导教师签字:
日期:
指导教师评语
成绩:
指导教师签字:
日期:
课程设计所需软件、硬件等
Eclipse软件用于java源代码的运行一台台式电脑wordoffice办公应用软件
鼠标键盘
课程设计进度计划
起至日期
工作内容
备注
1.准备阶段(4学时)
2.程序模块设计分析段
3.代码编写调试阶段
4.撰写论文阶段
选择设计题目、了解设计目的要求、查阅相关资料
程序总体设计、详细设计
程序模块代码编写、调试、测试
总结课程设计任务和设计内容,撰写课程设计论文
参考文献、资料索引
序号
文献、资料名称
编著者
出版单位
(1)丁振凡主编.Java语言实用教程[M].北京邮电大学出版社.2004.12
(2)丁振凡主编.Java语言实用教程实验指导[M].北京邮电大学出版社.2004.12
(3)耿祥义、张跃平主编.Java2实用教程.清华大学出版社
(4)
摘要
该报告中的程序是使用java程序编写,能够进行输入文字操作,并具有新建文件,打开文件,保存文件,退出,复制,粘贴,剪切等功能,不同之处是本程序能够对文字的颜色进行设置,该程序主要用到了javaswing和事件监听等。
目 录
第1章系统设计的.............................1
第2章系统实现路.............................2
第3章系统详细计.............................3
第4章系统调试行.............................7
第5章课程设计得.............................8
第6章参考献.................................9
第7章附录...................................10
第1章系统设计目的
1)设计一个简单的Windows记事本,可以实现以下功能:
1:
文件的新建,打开,保存和另存;
2:
对文件的编辑,如全选,复制,剪切,粘贴;
3:
执行完操作后,能够顺利关闭记事本。
2)通过这次设计,可以帮助学生:
1:
提高对Java语言设计的掌握能力;
2:
理论联系实际,进一步提高学生的软件开发技术;
3:
培养学生分析、解决问题的能力。
第2章系统实现思路
设计两个类,一个jsb类,具有程序的要求和功能再创建一个keshe主类,在主类中创建一个jsb类的对象,就可以直接在编译器中运行程序。
1:
界面设计
在主界面中设计一个Frame容器,并在其中加入一个下拉菜单和一个文本域控件,把该容器设置为GridLayout(1,1)布局。
2:
功能设计
在下拉菜单中加入子菜单并进行监听,分别实现对文件的操作功能。
点击不同菜单项时,显示不同界面。
3:
代码设计
编写每个控件的相关代码,并进行调试。
第3章系统详细设计
1:
界面设计
创建一个下拉菜单和文本域,在文本域中显示编辑的文件信息。
主要代码:
f=newFrame(s);
p1=newTextArea("");
f.setSize(400,600);
f.setBackground(Color.white);
f.setVisible(true);
menubar=newMenuBar();
menu1=newMenu("文件");
menu2=newMenu("编辑");
menu3=newMenu("帮助");
item1=newMenuItem("新建");
item2=newMenuItem("打开");
item3=newMenuItem("保存");
item4=newMenuItem("另存为");
item5=newMenuItem("退出");
item6=newMenuItem("全选");
item7=newMenuItem("复制");
item8=newMenuItem("剪切");
item9=newMenuItem("粘贴");
item10=newMenuItem("关于");
menu1.add(item1);
menu1.add(item2);
menu1.add(item4);
menu1.add(item5);
menu2.add(item6);
menu2.add(item7);
menu2.add(item8);
menu2.add(item9);
menu3.add(item10);
menubar.add(menu1);
menubar.add(menu2);
menubar.add(menu3);
f.setMenuBar(menubar);
2:
功能设计
对每个菜单项进行注册监听。
点击不同菜单项时,显示不同界面。
主要代码
item1.addActionListener(this);
item2.addActionListener(this);
item3.addActionListener(this);
item4.addActionListener(this);
item5.addActionListener(this);
item6.addActionListener(this);
item7.addActionListener(this);
item8.addActionListener(this);
item9.addActionListener(this);
item10.addActionListener(this);
3:
代码设计
部分菜单项的相关代码:
新建文件
if(e.getSource()==item1)
{if(i==0&&(ss.length()!
=0)){bc();}
else
p1.setText("");i=0;f.setTitle("文件对话框");}
打开文件
if(e.getSource()==item2)
{fd=newFileDialog(f,"打开文件",0);
fd.setVisible(true);
try{file=newFile(fd.getDirectory(),fd.getFile());
f.setTitle(fd.getFile()+"文件对话框");
FileReaderfr=newFileReader(file);
BufferedReaderbr=newBufferedReader(fr);
Stringline=null;
Stringview="";
while((line=br.readLine())!
=null)
{view+=line+"\n";}
p1.setText(view);
br.close();
fr.close();}
catch(IOExceptionexpIn)
{}}
复制文件
if(e.getSource()==item7)
{try{
Stringstr=p1.getSelectedText();
if(str.length()!
=0)
{strt=str;
}}catch(Exceptionex)
{}}
粘贴文件
if(e.getSource()==item9)
{if(strt.length()>0)
{p1.insert(strt,p1.getCaretPosition());
}
退出记事本
if(e.getSource()==item5)
{if(i==0&&(ss.length()!
=0))
{bc();}else{System.exit(0);}}
第4章 系统调试运行
1:
界面调试
确定主窗体,设置主窗体的属性,对窗体进行布局,加入所需控件并对控件进行初始化。
在完成加入菜单控件后,不能缺少f.setMenuBar(menubar);语句,将menubar设为主窗体的菜单条,否则会看不到菜单栏。
如图:
2:
功能调试
对所有菜单项进行注册监听。
当进行除保存以外的菜单项的功能外,在actionPerformed中要编写判断界面是否已经打开或者编辑了文件,如果是,在进行别的功能之前,先对本文件的保存功能,以免文件的丢失。
在具体实现中可以用变量i来判断文件是否处于保存状态。
第5章 课程设计心得
经过一个星期的我的记事本的课程设计,我在向华萍老师的指导下,顺利完成该课程设计。
通过该课程设计,收获颇多。
首先,让我加深了对Java语言的理论知识的理解;
其次,让我更加熟练的掌握了Java语言的设计能力并且有了实践经验;
再次,在设计过程中,学到了老师没有在课堂上没有教授的知识;
最后,加强了我对Java语言的学习兴趣和好感。
第6章 附录
程序源代码:
importjava.awt.event.*;
importjava.awt.*;
importjava.io.*;
importjava.lang.String;
classjsbimplementsActionListener
{
Dialogbb;
Stringstrt;
inti;
FileDialogfd;
Filefile;
publicFramef;
publicTextAreap1;
publicMenuBarmenubar;
publicMenumenu1,menu2,menu3;
publicMenuItemitem1,item2,item3,item4,item5,item6,item7,item8,item9,item10;
jsb(Strings)
{i=0;
f=newFrame(s);
p1=newTextArea("");
f.setSize(500,500);
f.setBackground(Color.white);
f.setVisible(true);
menubar=newMenuBar();
menu1=newMenu("文件");
menu2=newMenu("编辑");
menu3=newMenu("帮助");
item1=newMenuItem("新建");
item2=newMenuItem("打开");
item3=newMenuItem("保存");
item4=newMenuItem("另存为");
item5=newMenuItem("退出");
item6=newMenuItem("全选");
item7=newMenuItem("复制");
item8=newMenuItem("剪切");
item9=newMenuItem("粘贴");
item10=newMenuItem("关于");
f.addWindowListener(newWindowAdapter()
{
publicvoidwindowClosing(WindowEvente)
{f.setVisible(false);System.exit(0);}
});
menu1.add(item1);
menu1.add(item2);
menu1.add(item3);
menu1.add(item4);
menu1.add(item5);
menu2.add(item6);
menu2.add(item7);
menu2.add(item8);
menu2.add(item9);
menu3.add(item10);
menubar.add(menu1);
menubar.add(menu2);
menubar.add(menu3);
f.setMenuBar(menubar);
item1.addActionListener(this);
item2.addActionListener(this);
item3.addActionListener(this);
item4.addActionListener(this);
item5.addActionListener(this);
item6.addActionListener(this);
item7.addActionListener(this);
item8.addActionListener(this);
item9.addActionListener(this);
item10.addActionListener(this);
f.setLayout(newGridLayout(1,1));
f.add(p1);f.pack();
}
publicvoidactionPerformed(ActionEvente)
{
Stringss;
ss=p1.getText().trim();
if(e.getSource()==item5)
{
if(i==0&&(ss.length()!
=0))
{
bc();
}
else
{
System.exit(0);
}
}
if(e.getSource()==item1)
{
if(i==0&&(ss.length()!
=0))
{
bc();
}
else
{
p1.setText("");i=0;f.setTitle("文件对话框");
}
}
if(e.getSource()==item2)
{
fd=newFileDialog(f,"打开文件",0);
fd.setVisible(true);
try{
file=newFile(fd.getDirectory(),fd.getFile());
f.setTitle(fd.getFile()+"文件对话框");
FileReaderfr=newFileReader(file);
BufferedReaderbr=newBufferedReader(fr);
Stringline=null;
Stringview="";
while((line=br.readLine())!
=null)
{
view+=line+"\n";
}
p1.setText(view);
br.close();
fr.close();
}
catch(IOExceptionexpIn)
{}
}
if(e.getSource()==item3)
{
if(i==0)
{
bc();
}
else
{
try{
file=newFile(fd.getDirectory(),fd.getFile());
f.setTitle(fd.getFile()+"--记事本");
FileWriterfw=newFileWriter(file);
BufferedWriterbw=newBufferedWriter(fw);
Strings=p1.getText();
s=s.replaceAll("\n","\r\n");
bw.write(s);
bw.flush();
bw.close();
fw.close();
i=1;
}
catch(IOExceptionexpOut){i=0;}
}
}
if(e.getSource()==item4)
{
bc();
}
if(e.getSource()==item10)
{
bb=newDialog(f,"关于");
Labell1=newLabel("本记事本的完成感谢老师和同学的帮助!
!
");
bb.add(l1);
bb.setSize(250,150);
bb.setBackground(Color.white);
bb.show();
bb.addWindowListener(newWindowAdapter()
{
publicvoidwindowClosing(WindowEvente)
{bb.setVisible(false);bb.dispose();}
});
}
if(e.getSource()==item6)
{
p1.setSelectionStart(0);
p1.setSelectionEnd(p1.getText().length());
}
if(e.getSource()==item7)
{
try{
Stringstr=p1.getSelectedText();
if(str.length()!
=0)
{
strt=str;
}
}catch(Exceptionex)
{
}
}
if(e.getSource()==item8)
{
try{
Stringstr=p1.getSelectedText();
if(str.length()!
=0)
{
p1.replaceRange("",p1.getSelectionStart(),p1.getSelectionEnd());
}
}
catch(Exceptionex)
{
}
}
if(e.getSource()==item9)
{
if(strt.length()>0)
{
p1.insert(strt,p1.getCaretPosition());
}
}
}
publicvoidbc()
{
fd=newFileDialog(f,"保存文件",1);
fd.setVisible(true);
try{
file=newFile(fd.getDirectory(),fd.getFile());
f.setTitle(fd.getFile()+"--记事本");
FileWriterfw=newFileWriter(file);
BufferedWriterbw=newBufferedWriter(fw);
Strings=p1.getText();
s=s.replaceAll("\n","\r\n");
bw.write(s);
bw.flush();
bw.close();
fw.close();
i=1;
}
catch(IOExceptionexpOut){}
}
}
publicclasskeshe
{publicstaticvoidmain(Stringargs[])
{jsbdd=newjsb("我的记事本");}
}
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- java 课程设计