java记事本课程设计(共21页).doc

上传人:飞****2 文档编号:12183087 上传时间:2022-04-24 格式:DOC 页数:21 大小:152KB
返回 下载 相关 举报
java记事本课程设计(共21页).doc_第1页
第1页 / 共21页
java记事本课程设计(共21页).doc_第2页
第2页 / 共21页
点击查看更多>>
资源描述

《java记事本课程设计(共21页).doc》由会员分享,可在线阅读,更多相关《java记事本课程设计(共21页).doc(21页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、精选优质文档-倾情为你奉上目录1 引言目前,很多新的技术领域都涉及到了Java语言,Java语言是面向对象编程,并涉及到网络、多线程等重要的基础知识,因此Java语言也是学习面向对象编程和网络编程的首选语言。按照教学培养计划要求,学生在学习完课本中指定课时的知识后,应安排一定课时的课程设计。其主要目的是使学生深入理解并实践在本课程中所学的有关JAVA程序设计方面的语言基础、异常处理、事件处理、小应用程序以及图形用户界面设计等。故此“日历记事本”应运而生。本课程设计是为了配合Java程序设计课程,帮助学生深入学习掌握Java语言,熟练运用这个工具而设立的课程。通过课程设计各个项目的综合训练,加强

2、学生对JAVA语言的理解,检验学生对专业理论知识理解与掌握的程度,锻炼学生综合运用JAVA程序设计处理所学的知识实际分析问题、解决问题的能力,使课堂上的理论在实践中得到运用,提高学生的综合素质,为学生毕业后的实际工作打好基础。同时也满足了大多数同学对于一款简单易用的日记本软件的需求。 设计一个简单的Windows记事本,可以实现以下功能: 文件的新建,打开,保存和另存; 对文件的编辑,如全选,复制,剪切,粘贴; 执行完操作后,能够顺利关闭记事本。通过这次设计,可以帮助学生:提高对Java语言设计的掌握能力; 理论联系实际,进一步提高学生的软件开发技术; 培养学生分析、解决问题的能力。 2、需求

3、分析现在网络上各种文档编辑器数不胜数,有EmEditor,UEStudio,Word。功能也是应有尽有,有能改变字体的,有能改变文字颜色的。但是,这些软件又存在各种各样的瑕疵或问题:有的文件体积相对于一般文字编辑来说太大;有的功能太繁杂,使初级使用者一时难以掌握。仅从日常应用方面来说,一个文本编辑器只需一些简单实用的功能就够了。本程序设计就是依照这样一种使用需要设计了一个简单的实现特定功能的记事本程序。21系统概述 用户可以向前翻页查询前一个月的日期,也可以向后翻页查询下一个月的日期;用户可以针对某一天来添加,删除和编辑这一天的日程提醒信息,当系统时间和提醒时间相吻合时,给出具有提示信息的对话

4、框;用户可以查询到某个月的所有的提示信息。是一个平时写日记、备忘录的好工具。2.2 系实统现思路 设计两个类,一个jsb类,具有程序的要求和功能再创建一个keshe主类,在主类中创建一个jsb类的对象,就可以直接在编译器中运行程序。2.2.1 界面设计在主界面中设计一个Frame容器,并在其中加入一个下拉菜单和一个文本域控件,把该容器设置为GridLayout(1,1)布局。2.2.2 功能设计在下拉菜单中加入子菜单并进行监听,分别实现对文件的操作功能。点击不同菜单项时,显示不同界面。2.2.3 代码设计编写每个控件的相关代码,并进行调试。3 系统详细设计3.1 界面设计创建一个下拉菜单和文本

5、域,在文本域中显示编辑的文件信息。主要代码:f=new Frame(s); p1=new TextArea(); f.setSize(400,600); f.setBackground(Color.white); f.setVisible(true); menubar=new MenuBar(); menu1=new Menu(文件); menu2=new Menu(编辑); menu3=new Menu(帮助); item1=new MenuItem(新建); item2=new MenuItem(打开); item3=new MenuItem(保存); item4=new MenuItem

6、(另存为); item5=new MenuItem(退出); item6=new MenuItem(全选); item7=new MenuItem(复制); item8=new MenuItem(剪切); item9=new MenuItem(粘贴); item10=new MenuItem(关于); menu1.add(item1); menu1.add(item2); menu1.add(item4); menu1.add(item5); menu2.add(item6); menu2.add(item7); menu2.add(item8); menu2.add(item9); menu

7、3.add(item10); menubar.add(menu1); menubar.add(menu2); menubar.add(menu3); f.setMenuBar(menubar);3.2 功能设计对每个菜单项进行注册监听。点击不同菜单项时,显示不同界面。主要代码item1.addActionListener(this); item2.addActionListener(this); item3.addActionListener(this); item4.addActionListener(this); item5.addActionListener(this); item6.a

8、ddActionListener(this); item7.addActionListener(this); item8.addActionListener(this); item9.addActionListener(this); item10.addActionListener(this); 3.3 代码设计部分菜单项的相关代码:新建文件if (e.getSource()=item1) if (i=0&(ss.length()!=0) bc(); else p1.setText();i=0;f.setTitle(文件对话框); 打开文件if (e.getSource()=item2) fd

9、=new FileDialog(f,打开文件,0);fd.setVisible(true); try file=new File(fd.getDirectory(),fd.getFile(); f.setTitle(fd.getFile()+文件对话框); FileReader fr=new FileReader(file); BufferedReader br=new BufferedReader(fr); String line = null; String view = ; while(line=br.readLine()!=null) view += line+n; p1.setTex

10、t(view); br.close(); fr.close(); catch(IOException expIn) 复制文件if (e.getSource()=item7) try String str=p1.getSelectedText(); if(str.length()!=0) strt=str; catch(Exception ex) 粘贴文件if (e.getSource()=item9) if(strt.length()0) p1.insert(strt,p1.getCaretPosition(); 退出记事本if (e.getSource()=item5) if (i=0 &(

11、ss.length()!=0) bc(); else System.exit(0); 4 系统调试运行4.1 界面调试确定主窗体,设置主窗体的属性,对窗体进行布局,加入所需控件并对控件进行初始化。在完成加入菜单控件后,不能缺少函数f.setMenuBar(menubar); 语句,将menubar设为主窗体的菜单条,否则会看不到菜单栏。4.1.1 主界面主要是用于对选择相应的功能进行相应的功能,主界面主要包括文件,编辑,帮助三个下拉菜单功能。如图4.1.2 文件菜单界面文件菜单界面主要用于文件的相应功能,其中包括新建,打开,保存,另存为和退出。4.2.3 编辑菜单界面编辑菜单界面主要用于对文件

12、的编辑,其中包括有剪切,复制,粘贴,删除,查找替换全选等功能。4.1.4 打开文件及另存文件时的界面4.1.5 打开了某一个文本文件4.2 功能调试对所有菜单项进行注册监听。当进行除保存以外的菜单项的功能外,在actionPerformed中要编写判断界面是否已经打开或者编辑了文件,如果是,在进行别的功能之前,先对本文件的保存功能,以免文件的丢失。在具体实现中可以用变量i来判断文件是否处于保存状态。5 课程设计总结与思考在为期一周的JAVA课程设计过程中,我深深地感受到了自己对JAVA这门优秀的编程语言的掌握的不足。但我知道我还有很多东西要学。,经过这次课程设计的鞭策和逼迫,我们才不得不通过各

13、方面途径去查取相关资料,遇到了很多困难,也是在做之前 没有想到的,才知道现实和理论的差距,不做一次的确不知道自己的不足之处,不过我们从最初的无从下手,到分析设计,到编程调试,一步步走来,知识一点一滴的积累,在老师的帮助与指导、同组人员的研究与探讨下最终完成了该课程设计。在整个课程设计过程中,我感受最深的就是只要自己认真努力,没有过不去的坎。有了问题,就一定要弄清楚,放在一边永远都无法完成。同时,我也认识到了团结互助的重要性,一个人解决不了的问题,一定要多问多与别人讨论,在讨论的过程中完善自己的想法,并能碰撞出更为新颖的火花。课程设计让我们综合了我们所学的JAVA知识,给了我们一个提升自己编程能

14、力的平台,让我们明白JAVA在现代高科技社会中所起的重大作用。在以后的学习中,我会进一步加深对于JAVA的理解和使用,通过阅读相关知识拓宽自己对于JAVA的了解。6参考文献1 耿详义,张跃平. Java 2 实用教程. 北京:清华大学出版社,2004.22 张利国.Java实用教程案例.北京:清华大学出版社,2003.103 周晓聪,等.面向对象程序设计与Java语言.北京:机械工业出版社,2004.34 李尊朝.Java语言程序设计.北京:中国铁道出版社,2004.25 (美)Philip Heller.Complate Java 2 Certification Study Guide Fo

15、urth Edition(Java 2 证学习指南) (第四版 英文版). 北京:电子工业出版社,2004.16屈辉立,陈可明,石武信.JSP网站编程教程M.第1版,北京:北京希望电子出版社,20057白勇.用B/S模式构建在线考试系统J,重庆电力高等专科学校学报,2003,10(4):100130.8JiangGuo,YuehongLiao,BehzadParviz.ASurveyofJ2EEApplicationPerformanceManagementSystemsJ,ProceedingsoftheIEEEInternationalConferenceonWebServices(ICW

16、S04),2004.6(5):1732.9刘万军,梁清华,王松波,宋强Java程序设计,清华大学出版社.7 附 录程序源代码:import java.awt.event.*; import java.awt.*; import java.io.*; import java.lang.String; class jsb implements ActionListener Dialog bb; String strt; int i; FileDialog fd; File file; public Frame f; public TextArea p1; public MenuBar menuba

17、r; public Menu menu1,menu2,menu3; public MenuItem item1,item2,item3,item4,item5,item6,item7,item8,item9,item10; jsb(String s) i=0; f=new Frame(s); p1=new TextArea(); f.setSize(500,500); f.setBackground(Color.white); f.setVisible(true); menubar=new MenuBar(); menu1=new Menu(文件); menu2=new Menu(编辑); m

18、enu3=new Menu(帮助); item1=new MenuItem(新建); item2=new MenuItem(打开); item3=new MenuItem(保存); item4=new MenuItem(另存为); item5=new MenuItem(退出); item6=new MenuItem(全选); item7=new MenuItem(复制); item8=new MenuItem(剪切); item9=new MenuItem(粘贴); item10=new MenuItem(关于); f.addWindowListener(new WindowAdapter()

19、 public void windowClosing(WindowEvent e) 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)

20、; 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.a

21、ddActionListener(this); item10.addActionListener(this); f.setLayout(new GridLayout(1,1); f.add(p1);f.pack(); public void actionPerformed(ActionEvent e) String ss; 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&(s

22、s.length()!=0) bc(); else p1.setText();i=0;f.setTitle(文件对话框); if (e.getSource()=item2) fd=new FileDialog(f,打开文件,0);fd.setVisible(true); try file=new File(fd.getDirectory(),fd.getFile(); f.setTitle(fd.getFile()+文件对话框); FileReader fr=new FileReader(file);BufferedReader br=new BufferedReader(fr); Strin

23、g line = null; String view = ; while(line=br.readLine()!=null) view += line+n; p1.setText(view); br.close(); fr.close(); catch(IOException expIn) if (e.getSource()=item3) if (i=0) bc(); else try file=new File(fd.getDirectory(),fd.getFile(); f.setTitle(fd.getFile()+-记事本); FileWriter fw=new FileWriter

24、(file);BufferedWriter bw=new BufferedWriter(fw); String s =p1.getText(); s = s.replaceAll(n,rn); bw.write(s); bw.flush(); bw.close();fw.close(); i=1; catch(IOException expOut)i=0; if (e.getSource()=item4) bc(); if (e.getSource()=item10) bb=new Dialog(f,关于); Label l1=new Label(本记事本的完成感谢老师和同学的帮助!); bb

25、.add(l1); bb.setSize(250,150); bb.setBackground(Color.white); bb.show(); bb.addWindowListener(new WindowAdapter() public void windowClosing(WindowEvent e) bb.setVisible(false);bb.dispose(); ); if (e.getSource()=item6) p1.setSelectionStart(0); p1.setSelectionEnd(p1.getText().length(); if (e.getSource

26、()=item7) try String str=p1.getSelectedText(); if(str.length()!=0) strt=str; catch(Exception ex) if (e.getSource()=item8) try String str=p1.getSelectedText(); if(str.length()!=0) p1.replaceRange(,p1.getSelectionStart(),p1.getSelectionEnd(); catch(Exception ex) if (e.getSource()=item9) if(strt.length

27、()0) p1.insert(strt,p1.getCaretPosition(); public void bc() fd=new FileDialog(f,保存文件,1);fd.setVisible(true); try file=new File(fd.getDirectory(),fd.getFile(); f.setTitle(fd.getFile()+-记事本); FileWriter fw=new FileWriter(file);BufferedWriter bw=new BufferedWriter(fw); String s =p1.getText(); s = s.replaceAll(n,rn); bw.write(s); bw.flush(); bw.close();fw.close(); i=1; catch(IOException expOut) public class keshe public static void main(String args) jsb dd=new jsb(记事本); 专心-专注-专业

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁