陕西师范大学网络教育学院课程名称JAVA程序设计学习中心(点):甘肃张掖远程教育财会培训学校专业:计算机科学与技术层次:专升本姓名:蒋生彪批次:092第1页记事本程序设计报告目录摘要...............................................................................................................................................2前言...............................................................................................................................................31需求分析....................................................................................................................................31.1需求分析................................................................................................................................31.2功能设计................................................................................................................................32.概要设计....................................................................................................................................42.1程序设计思路........................................................................................................................42.2程序运行界面........................................................................................................................42.3模块说明图............................................................................................................................52.4程序流程图............................................................................................................................62.5程序相关说明........................................................................................................................73.程序详细设计与分析................................................................................................................73.1.初始化组件...........................................................................................................................73.2.构建菜单栏及其下拉菜单...................................................................................................73.3.“文件”菜单的事件监听...................................................................................................83.4.“编辑”菜单的事件监听...................................................................................................93.5.异常处理.............................................................................................................................104.测试分析...............................................................................................................................115.源程序清单...........................................................................................................................126.课程设计体会.......................................................................................................................177.致谢.......................................................................................................................................18参考文献.....................................................................................................................................18第2页记事本程序的设计摘要该报告中的程序是使用Java程序编写,能够进行输入文字操作,并具有新建文件,打开文件,保存文件,退出,复制,粘贴,剪切等功能,不同之处是本程序能够对文字的颜色进行设置。该程序主要用到了Javaswing和事件监听等。关键字:记事本程序;Java语言;Jcreator第3页前言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是大多开发工具的基础。以上的每种开发工具都有优缺点,对于开发者来说,重要的是要根据自己的开发规模、开发内容和软硬件环境等因素来选择一种合适的开发工具。在本程序设计中,因为需要开发的是记事本程序,规模较小,内容较少,所以选择了适合初学者使用的JCreator开发工具。1需求分析1.1需求分析现在网络上各种文档编辑器数不胜数,有EmEditor,UEStudio,GridinSoftNotepad,Notepad++,win32pad,SkimEdit,UniRed,xint。功能也是应有尽有,有能改变字体的,有能改变文字颜色的。但是,这些软件又存在各种各样的瑕疵或问题:有的文件体积相对于一般文字编辑来说太大;有的功能太繁杂,使初级使用者一时难以掌握。仅从日常应用方面来说,一个文本编辑器只需一些简单实用的功能就够了。本程序设计就是依照这样一种使用需要设计了一个简单的记事本程序。1.2功能设计本程序要构建的记事本程序参照了Windows操作系统的记事本工具,其功能有以下几个方面:(1).菜单中有“文件”,“编辑”,“关于”三个主菜单。第4页(2)“文件”有“新建”“打开”“保存”“退出”四个子菜单:分别用于新建文件,打开文件,保存文件,退出记事本。(3)“编辑”中有“剪切”“复制”“粘贴”“颜色”三个字菜单:用于剪切文字,复制文字,粘贴文字。增加了“颜色”子菜单来对文字的颜色进行设置。(4)“关于”菜单中有关于记事本程序的制作日期,作者等信息2.概要设计2.1程序设计思路在本程序中,设计了一个菜单栏和文本内容区。设计过程中用到了JScrollPane,JMenu,JTextPane,JFileChooser等。JMenu用来制作菜单,菜单包括“文件”“编辑”“关于”。JTextPane主要用来输入文本。为了加入颜色的设置,所以加了一个JColorChooser组件。2.2程序运行界面第5页2.3模块说明图图1在图1中,首先创建一个名为mynotepad的类并继承JFrame类作为最底层的容器。图2mynotepadimplementsextendsActionListenerJFramemynotepad的构造方法初始化容器组件添加事件监听菜单栏文字输入区文件编辑关于新建打开保存退出剪切复制粘贴颜色关于初始化初始化第6页在图2中,构造一个mynotepad类时要做三件事情,分别是初始化容器(initTextContent)、初始化组件(initMenu、initAboutDialog)、设置事件监听器。2.4程序流程图FalseFalsetruetruetruetruetruetruetruetrue启动程序输入文字新建打开保存退出剪切复制粘贴颜色关于file=nullfile=openfilesavingSystem.exit(0)content.cut()content.copy()content.pastecolorabout.show()第7页图32.5程序相关说明整个记事本分为2快:菜单栏和内容输入区。本程序中首先定义一个mynotepad类继承JFrame作为最底层容器。(1).Textcontent为程序文本输入区。(2).Menu为菜单栏。(3).AboutDialog为关于对话框。(4).要想记事本完成需求分析中相应的功能