JAVA记事本课程设计.doc
《JAVA记事本课程设计.doc》由会员分享,可在线阅读,更多相关《JAVA记事本课程设计.doc(31页珍藏版)》请在三一办公上搜索。
1、课程设计课程名称:JAVA程序设计题目: 简易记事本 年级/专业/班: 10计本一班 学生姓名: 李醒世争 学 号: 2010305107 指导老师: 马亚军 开题时间:2012年11月10日完成时间:2012年12月24日目录摘要1一、绪论2二、需求分析21、功能需求22、函数需求33、开发环境及运行环境分析3三、总体设计41、系统流程设计42、分模块设计4(1)“文件”菜单模块设计流程图4(2)“编辑”菜单模块设计流程图5(3)“格式”菜单模块设计流程图6(4)“帮助”菜单模块设计流程图73、类设计74、界面设计8(1)主界面8(2)打开界面9(3)保存界面10(4)字体界面11(5)帮助
2、界面15四、软件测试161、测试用例及结果162、程序功能的评价17五、结论17六、参考文献18附录(源程序完整代码)19摘要随时着科学技术的快速发展,计算机程序设计早已成为了趋势,JAVA是计算机专业的核心课程,是计算机科学的算法理论基础和软件设计的技术基础。本课程设计就是主要利用java语言编写的一个模仿windows 记事本的较简单的程序,它能实现打开文件,读取文件中的文本信息;显示、编辑修改文本信息;实现新建、打开、保存文本文件以及控制保存文本信息到指定的文件的一些基本功能 。本课程设计报告介绍了记事本系统,记事本的设计,在记事本的具体实现章节,给出了部分实现了的功能界面和相关的代码。
3、关键词:JAVA,记事本,相关功能ABSTRACTWith the rapid development of science and technology, computer programming has already become a trend.JAVA is a core course of computer professional, is the base of computer science.JAVA are practice-needed curriculum.This course is designed to strengthen practice ability of
4、 a powerful way,requiring JAVA applications and the basic methods of computer debugging.This course is a simple procedures designed mainly using Java language and the imitation of Windows notepad.It can realize that open files, read the text file information,display, edit and modify text information
5、, new, open and save text files and control to save text messages to the specified file and so on. This gives a text editor great convenience, and at the same time greatly improves the efficiency. This report introduces notebook system and notepad design. In the chapter of notepad realization,it giv
6、es part of realized function interface and relevant code. Keywords: JAVA,notepad,Relevant function一、绪论在文本编辑器出现前,人们用打孔机把计算机文字打到穿孔卡片上。文字存放于一个装着这样的薄卡片的盒子里,可以用读卡器来阅读它。 第一个文本编辑器是一种行编辑器,它运行在打字机型的终端上,这种编辑器并不具备在窗口和屏幕中显示的功能。它包含了一些非常短的命令(为了减少打字量)。其中一个命令能够把文件的指定部分通过打字机打印出来。编辑光标是想象中的一个插入点,通过特殊命令,可以把它移动到特定内容字符串所
7、在的行。随后,内容字符串又被扩展成正则表达式。如果想看到文件的变化,你需要把它打印出来。相对于穿孔机来说,人们认为这种基于行的文本编辑器具有革命性的进步。如果没有它,用户就需要把那些处理文本的命令打成专用的卡片,并在编辑文件时使用这些卡片。 当带有显示屏的计算机终端出现后,基于显示屏的文本编辑器开始流行起来。最早的全屏编辑器中,有一种叫做O26,它是于1967年为CDC 6000系列机器的操作控制台而作的。另外一个早期的全屏编辑器是vi。vi诞生于20世纪70年代,至今,它仍是Unix和Linux的标准编辑器。全屏编辑器对视频终端的销售起到了促进的作用。二、需求分析1、功能需求本程序要构建的记
8、事本程序参照了Windows操作系统的记事本工具,其功能有以下几个方面:(1)菜单中有“文件”、“编辑”、“格式”、“帮助”四个个主菜单;(2)“文件”有“新建”、“打开”、“保存”、“另存为”、“退出”五个字菜单,分别用于新建文件,打开文件,保存文件,另存文件,退出记事本。(3)“编辑”中,有“撤销”、“复制”、“剪切”、“粘贴”、“删除”、“全选”六个个子菜单,分别用于撤销上一次操作,复制选中文字,剪切选中文字,粘贴选中文字,删除选中文字,选定整个文件内容。(4) “格式”中有自动换行和字体两个子菜单,字体中包含了“字体”、“字形”、“大小”、“颜色”四个操作项。字体项可以对文字的字体样式
9、做修改,字体数量为Windows默认数值。字形项可以对文字的形式进行修改,共有“常规”、“倾斜”、“粗体”、“粗体+倾斜”四个选项。大小中包含了8-72磅大小范围内的字体大小数值选项。颜色可以对字体进行颜色上的修改,是字体更加漂亮,颜色数量为Windows默认值。自动换行能够实现文档在编辑是否需要的自动换行功能。(5)“帮助”菜单中有“关于记事本”一个子菜单,用于描述记事本程序的相关信息和开发人员的个人信息。2、函数需求本次设计中,设计了一个菜单栏和文本内容区。设计过程中用到了JScrollPane,JMenu,JTextPane,JFileChooser等。JMenu用来制作菜单,JText
10、Pane主要用来输入文本。为了加入颜色的设置,所以加了一个JColorChooser组件。整个记事本分为2块,菜单栏和内容输入区。菜单栏设计如下:类名: EditWindow(1)作用: 主类(2)继承的父类: JFrame类 (3)实现的接口: windowListener类与actionListener类(4)成员变量说明:File file=null; /定义一个空文件 private JLabel stateBar; /定义一个标签 private JTextArea text; /定义编辑区 private JMenuBar menubar; /定义菜单栏 private JMenu
11、 menu1、menu2、menu3、menu4; /定义菜单private JMenu item1-6,item2-6,item3-2,item4 /定义菜单项主要成员方法说明:编辑区键盘事件:KeyListener类 如果记事本的编辑区内用键盘输入了字符,就能够被程序监听;窗口的事件监听:windowListener类,用来监听处理容器关闭触发的事件:菜单项的事件监听:ActionListener类,用来监听并处理所有菜单项和内容输入区为事件源的事件。3、开发环境及运行环境分析本记事本的开发环境是在windows 7的环境下开发,运用了EditPul文本编辑器v3.30、JDK1.6开发工
12、具,运行环境是DOS下运行的。三、总体设计1、系统流程设计 输入文字文件编辑格式退出YN结束开始2、分模块设计(1)“文件”菜单模块设计流程图开始“文件”菜单新建另存为File=null打开用JFileChooser()选择所有打开文件路径用unfold()读取所选的文件内容到记事本保存用sava()保存文件用JFileChooser()选择文件另存的路径用sava()保存文件退出或关闭文件是否修改用sava()保存文件Y结束N图3.2 “文件”菜单操作流程图用close()关闭文件(2)“编辑”菜单模块设计流程图开始“编辑”菜单撤销全选用Area.setText(value)实现复制用tex
13、t.copy()实现粘贴设置修改标签,text.cut()粘贴设置修改标签,text.paste()删除删除value=area.getText();area.replaceSelection(null);用text.selectAll()实现退出或关闭文件是否修改用sava()保存文件并结束用close()关闭文件YN图3.3 “编辑”菜单操作流程图(3)“格式”菜单模块设计流程图开始自动换行字体结束(4)“帮助”菜单模块设计流程图开始“帮助”菜单关于记事本显示记事本的有关信息结束图3.4 “帮助”菜单操作流程图3、类设计成员变量类型成员变量名 成员变量描述JMenuBarmenubar菜单
14、条JTextAreaarea文本区JScrollPanepane滚动条,当文本内容大于文本区时的时候显示。JMenumenu1、menu2、menu3、menu4文件、编辑、字体、帮助JMenuItemitem11,item12,item13,item14,item16新建、打开、保存、另存为、退出JMenuItemitem21,item22,item23,item24,item25,item26撤销、复制、剪切、粘贴、删除、全选JMenuItemitem31,item32自动换行、字体JMenuItemitem41关于记事本4、界面设计(1)主界面主界面主要是用于对选择相应的功能进行相应的功
15、能,主界面主要包括文件,编辑,格式,帮助四个下拉菜单功能。主要代码:public class examJSB public static void main(String args) EditWindow win=new EditWindow(新建文本文档); class EditWindow extends JFrame implements ActionListener JMenuBar menubar;JMenu menu1;JMenu menu2;JMenu menu3;JMenu menu4;JTextArea area;JFileChooser fileChooser;privat
16、e String value;boolean isSaved = true;EditWindow(String s)setTitle(s);setSize(400,400);setLocation(50,50);setVisible(true);fileChooser=new JFileChooser(c:/);/打开文件menubar=new JMenuBar();menu1=new JMenu(文件);menu2=new JMenu(编辑);menu3=new JMenu(格式);menu4=new JMenu(帮助);/文字编辑区域 area=new JTextArea();area.s
17、etFont(new Font(宋体, Font.PLAIN, 16);/*设置当前字体*/area.setLineWrap(true);/*设置文本区的换行策略*/JScrollPane pane=new JScrollPane(area, JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED,ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);/*垂直和水平滚动条-查看无法完全显示时,滚动条显示*/ Container contentPane = getContentPane(); contentPane.add(pa
18、ne, BorderLayout.CENTER);validate();isSaved=false;/刚刚打开的窗口状态为未保存this.setLocationRelativeTo(null);this.setDefaultCloseOperation(EXIT_ON_CLOSE); (2)打开界面主要代码:else if(e.getSource()=item12)/打开area.setText(null);int n=fileChooser.showOpenDialog(null);if(n=JFileChooser.APPROVE_OPTION)File file=fileChooser.
19、getSelectedFile();try FileReader readfile=new FileReader(file); BufferedReader in=new BufferedReader(readfile);String s=null;while(s=in.readLine()!=null) area.append(s+n);catch(IOException ee) (3)保存界面主要代码:private void Save() / 从标题栏取得文件名称 File file = new File(getTitle(); / 若指定的文件不存在 if(!file.exists()
20、 / 执行另存为 saveFileAs(); else try / 开启指定的文件 BufferedWriter buf = new BufferedWriter( new FileWriter(file); / 将文字编辑区的文字写入文件 buf.write(area.getText(); buf.close(); catch(IOException e) JOptionPane.showMessageDialog(null, e.toString(), 写入文件失败, JOptionPane.ERROR_MESSAGE); (4)字体界面主要代码:/引用 Fonts事件设计字体class
21、Fonts extends JDialog private static final long serialVersionUID = 4042773383845024827L;/ 字体格式String style = null;String bold = null;String size = null;Font font = null;String str_style = GraphicsEnvironment.getLocalGraphicsEnvironment().getAvailableFontFamilyNames();String str_bold = 常规, 倾斜, 粗体, 粗体
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- JAVA 记事本 课程设计
链接地址:https://www.31ppt.com/p-2386969.html