java课程设计记事本.docx
- 文档编号:5626829
- 上传时间:2022-12-29
- 格式:DOCX
- 页数:19
- 大小:180.05KB
java课程设计记事本.docx
《java课程设计记事本.docx》由会员分享,可在线阅读,更多相关《java课程设计记事本.docx(19页珍藏版)》请在冰豆网上搜索。
java课程设计记事本
攀枝花学院课程设计
题目:
记事本
院(系):
数学与计算机学院
年级专业:
姓名:
学号:
指导教师:
二〇一三年十二月三十日
攀枝花学院教务处制
攀枝花学院本科学生课程设计任务书
题 目
记事本
1、课程设计的目的
通过本课程设计使学生能够较全面的掌握面向对象程序设计的有关概念和开发方法,以便能较全面地理解、掌握和综合运用所学的知识,提高自身的编程能力。
2、课程设计的内容和要求(包括原始数据、技术要求、工作要求等)
模拟Windows的记事本程序,编写一个记事本。
要求具备基本的编辑、复制、粘贴、剪切、保存文件等功能,界面美观。
3、主要参考文献
[1]朱福喜.《Java语言程序设计》(第二版).科学出版社
[2]陈国君等.《Java程序设计基础》(第二版).清华大学出版社
[3]Deitel.《Java大学基础教程》(第六版).电子工业出版社
[4]MaryCampione.《Java语言导学》(第四版).机械工业出版社
[5]Y.DanielLiang.《Java语言程序设计基础篇》(第六版).机械工业出版社
[6]KathySierra.《HeadFirstJava》(第二版).东南大学出版社
4、课程设计工作进度计划
序号
时间(天)
内容安排
备注
1
1
分析设计准备
周一
2
2
编程调试阶段
周二至周三
3
1
编写课程设计报告
周四
4
1
考核
周五
总计
5(天)
指导教师(签字)
日期
年月日
教研室意见:
年月日
学生(签字):
接受任务时间:
年月日
题目名称
记事本
评分项目
分值
得分
评价内涵
工作
表现
20%
01
学习态度
6
遵守各项纪律,工作刻苦努力,具有良好的科学工作态度。
02
科学实践、调研
7
通过实验、试验、查阅文献、深入生产实践等渠道获取与课程设计有关的材料。
03
课题工作量
7
按期圆满完成规定的任务,工作量饱满。
能力
水平
35%
04
综合运用知识的能力
10
能运用所学知识和技能去发现与解决实际问题,能正确处理实验数据,能对课题进行理论分析,得出有价值的结论。
05
应用文献的能力
5
能独立查阅相关文献和从事其他调研;能提出并较好地论述课题的实施方案;有收集、加工各种信息及获取新知识的能力。
06
设计(实验)能力,方案的设计能力
5
能正确设计实验方案,独立进行装置安装、调试、操作等实验工作,数据正确、可靠;研究思路清晰、完整。
07
计算及计算机应用能力
5
具有较强的数据运算与处理能力;能运用计算机进行资料搜集、加工、处理和辅助设计等。
08
对计算或实验结果的分析能力(综合分析能力、技术经济分析能力)
10
具有较强的数据收集、分析、处理、综合的能力。
成果
质量
45%
09
插图(或图纸)质量、篇幅、设计(论文)规范化程度
5
符合本专业相关规范或规定要求;规范化符合本文件第五条要求。
10
设计说明书(论文)质量
30
综述简练完整,有见解;立论正确,论述充分,结论严谨合理;实验正确,分析处理科学。
11
创新
10
对前人工作有改进或突破,或有独特见解。
成绩
指导教师评语
指导教师签名:
年 月 日
课程设计(论文)指导教师成绩评定表
摘要
记事本的特点是只支持纯文本。
一般来说,如果把文本从网页复制并粘贴到一个文字处理软件,它的格式和嵌入的媒体将会被一起粘贴并且难以去除。
但是,如果将这样一个文本先粘贴到记事本中,然后从记事本中再次复制到下最终需要的软件里,记事本将会去除所有的格式,只留下纯文本,在某些情况下相当有用。
记事本几乎可以编辑任何文件,但不包括Unix风格的文本文件。
随着时代的发展,计算机的普及,人们开始利用网络来记录和管理一些日常的事务,时下这方面的软件也是多如牛毛,如加入个人信息管理软件。
记事本软件不仅可以方便管理、记录日常事务,还可以记录一些重要的资料及文件等等,是我们工作和生活的好助手。
关键词记事本,软件,文字处理,方便管理
二需求分析7
1系统概述
随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。
Java的前身是Oak,它一开始只是被应用于消费性电子产品中。
后来它的开发者们发现它还可以被用于更大范围的Internet上。
1995年,Java语言的名字从Oak编程了Java。
1997年J2SE1.1发布。
1998年J2SE1.2发布,标志Java2的诞生。
十多年来,Java编程语言及平台成功地运用在网络计算及移动等各个领域。
Java的体系结构由Java语言、Javaclass、JavaAPI、Java虚拟机组成。
它具有简单、面向对象、健壮、安全、结构中立、可移植和高效能等众多优点。
Java支持多线程编程,Java运行时系统在多线程同步方面具有成熟的解决方案。
Java的平台标准有JavaME,JavaSE和JavaEE。
Java发展到今天,它的卓越成就及在业界的地位毋庸置疑。
目前在众多的支持Java的开发工具中主要的7有JavaDevelopmentKit,NetBeans,Jcreator,JBuilder,JDeveloper和Eclipse等。
其中JavaDevelopmentKit简称JDK是大多开发工具的基础。
以上的每种开发工具都有优缺点,对于开发者来说,重要的是要根据自己的开发规模、开发内容和软硬件环境等因素来选择一种合适的开发工具。
在本程序设计中,运用了许多用于java开发的工具包,比如java.awt,java.swing等包,大大简化了开发的复杂度,提高了效率。
2需求分析
该课程设计报告里的记事本程序是使用Java程序设计语言编写的,要求实现记事本的基本功能,参考了windows中记事本的一些功能。
要求打开文件,读取文件中的文本信息;显示、编辑修改文本信息;实现新建、打开、保存文本文件以及控制保存文本信息到指定的文件的一些基本功能。
3功能设计
本程序构建的记事本工具主要具备以下几种功能:
(1)菜单栏中有“文件”、“编辑”、“格式”、及其“帮助”四个主菜单;
(2)“文件”菜单有“新建”“打开”“保存”“退出”四个子菜单,分别用于新建文件,打开文件,保存文件,退出记事本。
(3)“编辑”菜单有“复制”“剪切”“粘贴”“删除”“时间/日期”子菜单。
(4)可直接在记事本中写日志,可对其进行保存,删除,复制,剪切,粘贴操作。
4设计思路
本程序中设计了文本内容区,个性签名区,万年历区以及按钮区四大区。
设计过程中使用了JPanel,JTextField,JButton,JLabel,JMenuItem,ImageIcon等,其中ImageIcon是添加个性图片的,JTextField是输入文本区,JPanel是整个布局的主体,JButton是设置按钮的组件等等。
5模块说明图
图1NoteBook类
在图1中,首先创建一个名为NoteBook的类并继承JFrame类作为最底层的容器。
图2NoteBook的构造方法
在图2中,构造一个NoteBook类时要做三件事情,分别是初始化容器(initTextContent)、初始化组件(initMenu、initAboutDialog)、设置事件监听器。
6程序运行界面
图3为运行后的第一界面
图3运行的第一个界面
图4在文本区编辑一段文字,然后选中一部分文字,单击编辑—>复制按钮,对其进行复制操作。
图4复制按钮界面
图5是对图的进一步操作,对图4复制后,将其单击粘贴按钮的运行界面
图5粘贴按钮界面
图6是对图5进行的操作的页面效果显示界面
图6粘贴后的界面
图7是将图6界面中的文字选中部分后对其进行剪切操作单击按钮剪切即可
图7剪切按钮界面
图8为图7的实现显示的界面效果图
图8剪切后的界面
7关键代码
复制文件
classcopylimplementsActionListener
{
publicvoidactionPerformed(ActionEvente)
{
jta.copy();
}
}
JMenuItemjmi;
jmi=newJMenuItem("复制");
jmi.addActionListener(newcopyl());
mEdit.add(jmi);
剪切文件
classcutlimplementsActionListener
{
publicvoidactionPerformed(ActionEvente)
{
jta.cut();
}
}
jmi=newJMenuItem("剪切");
jmi.addActionListener(newcutl());
mEdit.add(jmi);
粘贴文件
classpastelimplementsActionListener
{
publicvoidactionPerformed(ActionEvente)
{
jta.paste();
}
}
jmi=newJMenuItem("粘贴");
jmi.addActionListener(newpastel());
mEdit.add(jmi);
8设计总结
课程设计是检验我们真正所学的知识的时候,这次的课程设计综合性比较的强,所需要实现的功能也很多。
刚开始拿到这个课题,根本不知从何下手,后来看了一下书上的程序,才有了一点眉目。
在开发这个系统的过程中,碰到很多的问题,有的是因为粗心出现的,有些确实是平时积累的知识太少了,跟组员反复改了很久,有些问题还是没解决,最后多方请教,终于成功完成了本系统。
通过这次课程设计,我认识到自己的不足,光靠上课学到的知识是远远不够的,在解决问题的过程中学到的才是最重要的。
我更深刻的认识到,不管是做什么,一定要认真仔细,不能马虎,也一定要认真掌握该掌握的基础理论知识,才有可能灵活的运用。
在着手时,首先我们对参考书上的程序进行了研究,对我们的系统有了初步的了解,对于系统需要实现的功能也有了一定的概念。
我们考虑到了界面的人性化,所以界面颜色比较淡雅。
并尽量在界面设计时不采用烦琐的细节,使界面简单、清晰,便于操作。
本次编制中的不足之处是因为是首次尝试,可能在实际应用中有些功能不到位,对信息的灵活性运用不够成熟。
这次的课程设计,使我认识到,对待任何事,首先是在态度上应该重视,只有认真去对待,才有心思去做好;其次,使我对JAVA有了更加深刻的了解,也对应用JBuilder9.0的开发设计有了进一步的补充;最后,这个系统的成功完成使我认识到团结合作的重要性,如果没有与组员的互帮互助,单靠个人是不可能这么快做出来的。
在此过程中,我得到更多更细的基础知识,必将给我今后的学习和工作带来更多的帮助。
最后,由于自己的知识和分析设计程序经验有限,在该系统设计和最终实现的功能都不是很完善,比如用户界面设计不够美观,异常出错处理比较差等多方面问题,还有实现的功能不够全面等,这些都有待进一步完善和提高。
对于系统中出现的不足之处敬请老师指导。
9参考文献
1叶核亚,陈立著.Java2程序设计实用教程.北京2003.5电子工业出版社
2柯温钊著.JAVA例解教程.北京2001.03中国铁道出版社
3陈轶.姚晓昆编著.Java程序设计实验指导.北京:
2006清华大学出版社
4杨昭编著.二级Java语言程序设计教程.北京:
中国水利水电出版社,2006
5赵文靖编著.Java程序设计基础与上机指导.北京:
清华大学出版社,2006
6赵毅主编.跨平台程序设计语言——Java.西安:
西安电子科技大学出版社,2006
7王路群.Java高级程序设计.北京:
中国水利水电出版社,2006
10源程序
importjava.awt.*;
importjava.io.*;
importjavax.swing.*;
importjava.awt.event.*;
importjavax.swing.event.*;
importjava.util.*;
importjava.io.PrintWriter;
publicclassNotePadextendsJFrame
{
JTextAreajta;
classnewlimplementsActionListener
{
publicvoidactionPerformed(ActionEvente)
{
jta.setText("");
}
}
classopenlimplementsActionListener
{
publicvoidactionPerformed(ActionEvente)
{
JFileChooserjf=newJFileChooser();
intisOpen=jf.showOpenDialog(NotePad.this);
//文件打开失败
if(isOpen!
=0)
return;
Stringstr=null;
try
{
BufferedReaderbr=newBufferedReader(newFileReader(jf.getSelectedFile()));
//逐行加载文件
while((str=br.readLine())!
=null)
jta.append(str+'\n');
}
catch(IOExceptionex)
{
ex.printStackTrace();
}
}
}
//保存文件的监听
classsavelimplementsActionListener
{
publicvoidactionPerformed(ActionEvente)
{
JFileChooserjf=newJFileChooser();
intisOpen=jf.showOpenDialog(NotePad.this);
//显示保存文件对话框
if(isOpen==jf.APPROVE_OPTION)//点击对话框中保存选项
{
Filef=jf.getSelectedFile();//得到选择的文件
PrintWriterout;
try
{
out=newPrintWriter(newFileWriter(f,false));
Stringstr=jta.getText();
str=str.replace("\n","\r\n");
out.println(str);
out.flush();
out.close();
}
catch(IOExceptionex)
{
ex.printStackTrace();//输出出错信息
}
}
}
}
//退出记事本的监听
classexitlimplementsActionListener
{
publicvoidactionPerformed(ActionEvente)
{
System.exit(0);//退出
}
}
//复制的监听
classcopylimplementsActionListener
{
publicvoidactionPerformed(ActionEvente)
{
jta.copy();
}
}
//粘贴的监听
classpastelimplementsActionListener
{
publicvoidactionPerformed(ActionEvente)
{
jta.paste();
}
}
//剪切的监听
classcutlimplementsActionListener
{
publicvoidactionPerformed(ActionEvente)
{
jta.cut();
}
}
//添加日期的监听
classdatelimplementsActionListener
{
publicvoidactionPerformed(ActionEvente)
{
Dated=newDate();
jta.append(d.toString());
}
}
//构造函数
publicNotePad()
{
jta=newJTextArea("",640,400);
JScrollPanejsp=newJScrollPane(jta);
JMenuBarjmb=newJMenuBar();
JMenumFile=newJMenu("文件(F)");
JMenumEdit=newJMenu("编辑(E)");
JMenumFormat=newJMenu("格式(O)");
JMenumAbout=newJMenu("帮助(H)");
JMenuItemmNew=newJMenuItem("新建(N)",KeyEvent.VK_N);
mNew.addActionListener(newnewl());
mFile.add(mNew);
JMenuItemmOpen=newJMenuItem("打开(O)",KeyEvent.VK_O);
mOpen.addActionListener(newopenl());
mFile.add(mOpen);
JMenuItemmSave=newJMenuItem("保存(S)",KeyEvent.VK_S);
mSave.addActionListener(newsavel());
mFile.add(mSave);
mFile.addSeparator();//添加分割线
JMenuItemmExit=newJMenuItem("退出",KeyEvent.VK_X);
mExit.addActionListener(newexitl());
mFile.add(mExit);
//编辑菜单的子菜单的处理
JMenuItemjmi;
jmi=newJMenuItem("复制");
jmi.addActionListener(newcopyl());
mEdit.add(jmi);
jmi=newJMenuItem("剪切");
jmi.addActionListener(newcutl());
mEdit.add(jmi);
jmi=newJMenuItem("粘贴");
jmi.addActionListener(newpastel());
mEdit.add(jmi);
mEdit.addSeparator();//添加分割线
jmi=newJMenuItem("日期/时间");
jmi.addActionListener(newdatel());
mEdit.add(jmi);
jmb.add(mFile);
jmb.add(mEdit);
jmb.add(mFormat);
jmb.add(mAbout);
this.setJMenuBar(jmb);
this.getContentPane().add(jsp);
this.setSize(640,400);
this.setVisible(true);
}
//主函数,程序入口点
publicstaticvoidmain(String[]args)
{
newNotePad();
}
}
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- java 课程设计 记事本
![提示](https://static.bdocx.com/images/bang_tan.gif)