《简易记事簿java课设说明书》由会员分享,可在线阅读,更多相关《简易记事簿java课设说明书(27页珍藏版)》请在金锄头文库上搜索。
1、塔里木大学信息工程学院课程设计2016 届课程设计简易记事本课程设计说明书学生姓名 谭 全 全 学 号 5011212506 所属学院 信息工程学院 专 业 计算机科学与技术 班 级 计算机 16-5 指导教师 高贤强 教师职称 讲师 塔里木大学教务处制塔里木大学信息工程学院课程设计塔里木大学课程设计任务书课程名称: Java 程序设计 课程所属教研室: 计算机系 指导教师: 高贤强 学号 5011212506 学生姓名 谭全全 (专业)班级 计算机 16-5设计题目 简易记事本设计技术内容1.掌握 Java语言的程序设计方法;2.理论联系实际,进一步提高学生的软件开发技术;3.培养学生分析、
2、解决问题的能力;4.提高学生实践论文撰写能力。设计要求1.熟悉 Java开发环境,掌握 Java程序的编译和运行;2.掌握 Java基本编程技术和方法;3.了解异常处理机制。参考资料1.丁振凡主编。Java 语言实用教程【M】 。北京邮电大学出版社 2004.122.丁振凡主编。Java 语言实用教程实验指导【M】 。北京邮电大学出版社 2004.12周次 第一周 第二周应完成内容1.准备阶段:选择设计题目、了解设计目的的要求、查阅相关资料2.程序魔窟啊设计分析阶段:程序总体设计、详细设计3.代码编写调试阶段:程序模块代码编写、调试、测试4.撰写论文阶段:总结课程设计任务和设计内容,撰写课程设
3、计论文指导教师签字教研室主任签字说明:1、此表一式三份,院、学科组、学生各一份。2、学生那份任 务书要求装 订到课程设计报告前面。塔里木大学信息工程学院课程设计目录前言 .1正文 .11.设计的目的和意义; .12.目标和总体方案; .12.1总体方案: .13.设计方法和内容; .23.1需求分析 .23.2功能设计 .23.3 程序设计思路 .23.4总体设计 .2课设总结 .8致谢 .9参考文献: .10附录: .11塔里木大学信息工程学院课程设计第 0 页 共 22 页前言Java语言程序设计是一门实践性很强的软件设计课程,是继 PASCAL语言之后的又一门优秀的课程教学语言,并且是教
4、学需要与实际应用相结合的一门语言。课程设计为学生提供了一个既动手又动脑,独立实践的机会,将课本上的理论知识和实际有机的结合起来,锻炼学生的分析解决实际问题的能力。提高学生适应实际,实践编程的能力。通过这次课程设计可以将书本上的知识转换成实际的东西,做到学以制用。通过本次课程设计,可以帮助学生全面牢固地掌握课堂教学内容、培养学生的实践动手能力和分 Java语言程序设计实际问题的能力,培养学生调查研究、查阅技术文献、资料的能力,培养学生良好的编程风格和优秀的程序设计技术。正文1.设计的目的和意义;目前,很多新的技术领域都涉及到了 Java语言,Java 语言是面向对象编程,并涉及到网络、多线程等重
5、要的基础知识,因此 Java语言也是学习面向对象编程和网络编程的首选语言。按照教学培养计划要求,学生在学习完课本中指定课时的知识后,应安排一定课时的课程设计。其主要目的是使学生深入理解并实践在本课程中所学的有关 JAVA程序设计方面的语言基础、异常处理、事件处理、小应用程序以及图形用户界面设计等。故此“简易记事本”应运而生。 本课程设计是为了配合 Java程序设计课程,帮助学生深入学习掌握Java语言,熟练运用这个工具而设立的课程。通过课程设计各个项目的综合训练,加强学生对 JAVA语言的理解,检验学生对专业理论知识理解与掌握的程度,锻炼学生综合运用JAVA程序设计处理所学的知识实际分析问题、
6、解决问题的能力,使课堂上的理论在实践中得到运用,提高学生的综合素质,为学生毕业后的实际工作打好基础。同时也满足了大多数同学对于一款简单易用的日记本软件的需求。2.目标和总体方案;打开计算本窗口,在编辑区进行文本的输入,可以使用剪切、复制、粘贴等功能键,当文本输入完毕后点击“文件”菜单,选择下拉菜单中的“保存文本”打开“保存”窗口,选择保存文件的根目录进行保存。当需要关闭窗口时可通过“文件”菜单下的“退出系统”选项,或者选择“工具栏”中的“退出”按钮,也可以直接点击窗口右上角的关闭图标进行关闭,这是设计此记事本的目的。2.1 总体方案:第一周:1.准备阶段:选择设计题目、了解设计目的的要求、查阅
7、相关资料2.程序魔窟啊设计分析阶段:程序总体设计、详细设计第二周:3.代码编写调试阶段:程序模块代码编写、调试、测试4.撰写论文阶段:总结课程设计任务和设计内容,撰写课程设计论文塔里木大学信息工程学院课程设计第 1 页 共 22 页3.设计方法和内容;3.1 需求分析 现在网络上各种文档编辑器种类繁多,有EmEditor ,UEStudio ,GridinSoft Notepad ,Notepad+,win32pad ,SkimEdit,UniRed, xint 。功能也是应有尽有,有能改变字体的,有能改变文字颜色的。但是,这些软件又存在各种各样的瑕疵或问题:有的文件体积相对于一般文字编辑来说
8、太大;有的功能太繁杂,使初级使用者一时难以掌握。仅从日常应用方面来说,一个文本编辑器只需一些简单实用的功能就够了。本程序设计就是依照这样一种使用需要设计了一个简单的记事本程序。 3.2 功能设计 本程序要构建的记事本程序参照了 Windows操作系统的记事本工具,其功能有以下几个方面: 1) 菜单中有“文件” , “编辑” , “关于”三个主菜单。 2) “文件”有“新建” “打开” “保存” “退出”四个子菜单:分别用于新建文件,打开文件,保存文件,退出记事本。 3) “编辑”中有“剪切” “复制” “粘贴” “颜色”三个字菜单:用于剪切文字,复制文字,粘贴文字。增加了“颜色”子菜单来对文字
9、的颜色进行设置。 4) “关于”菜单中有关于记事本程序的制作日期,作者等信息。 3.3 程序设计思路 在本文中,设计了一个菜单栏和文本内容区。设计过程中用到了JScrollPane,JMenu,JTextPane,JFileChooser 等。JMenu 用来制作菜单,菜单包括“文件” “编辑” “关于” 。JTextPane 主要用来输入文本。为了加入颜色的设置,所以加了一个JColorChooser组件。 3.4 总体设计模块说明图图 3.31mynotepadimplementsextendsActionListenerJFrame塔里木大学信息工程学院课程设计第 2 页 共 22 页在
10、图 3.31中,首先创建一个名为 mynotepad的类并继承 JFrame类作为最底层的容器。图 3.32 在图 3.32中,构造一个 mynotepad类时要做三件事情,分别是初始化容器(initTextContent) 、初始化组件(initMenu、initAboutDialog) 、设置事件监听器。mynotepad的构造方法初始化容器 组件 添加事件监听菜单栏 文字输入区文件 编辑 关于新建打开保存退出剪切复制粘贴颜色关于初始化初始化塔里木大学信息工程学院课程设计第 3 页 共 22 页程序流程图False False True true true true true true t
11、rue true图 3启动程序输入文字新建打开保存退出剪切复制粘贴颜色关于file=openfilesavingSystem.exit(0)content.cut()content.copy()content.pastecolor关闭或退出程序塔里木大学信息工程学院课程设计第 4 页 共 22 页程序相关说明整个记事本分为 2快:菜单栏和内容输入区。本程序中首先定义一个 mynotepad类继承 JFrame作为最底层容器。(1).Textcontent 为程序文本输入区。(2).Menu 为菜单栏。(3).AboutDialog 为关于对话框。(4).要想记事本完成需求分析中相应的功能,还必
12、须添加事件监听器。事件监听器不仅要添加在菜单栏和内容输入区,还需加在容器中。本程序中 ActListener实现了 ActionListener接口,用来监听并处理所有菜单项和内容输入区为事件源的事件。另外,还用来 WindowListener来监听处理容器关闭触发的事件,WindowListener 继承了 WindowsAdapter类并覆盖了 WindowsClosing方法。初始化组件initTextContent();initMenu();initAboutDialog();构建菜单栏及其下拉菜单JMenu menus=new JMenunew JMenu(文件),new JMenu
13、(编辑),new JMenu(关于)塔里木大学信息工程学院课程设计第 5 页 共 22 页;JMenuItem optionofmenu=new JMenuItemnew JMenuItem(新建),new JMenuItem(打开),new JMenuItem(保存),new JMenuItem(退出),new JMenuItem(复制), new JMenuItem(剪切),new JMenuItem(粘贴),new JMenuItem(颜色),new JMenuItem(关于);“文件”菜单的事件监听ActionListener action=new ActionListener() public void actionPerformed(ActionEvent e)String name = e.getActionCommand();JMenuItem MI=(JMenuItem)e.getSource();if(新建.equals(name)content.setText();file=null;else if(打开