《Java实训报告电子版》由会员分享,可在线阅读,更多相关《Java实训报告电子版(16页珍藏版)》请在金锄头文库上搜索。
1、实训报告书实训名称:Java程序设计实训系(部):信息工程系专业班级:学生:学 号:指导教师:民完成日期: 2015.12.11科技大学泰山科技学院实训课题文本编辑器实训人同组人员实训日期2015.12.07 至 2015.12.11实训成绩指导教师评语指导教师签名:年月日目录1实训目的1.1 实训目的1.2实训要求2文本编辑器系统的分析与设计2.1系统功能描述2.2系统模块设计2.3数据库结构设计3主要代码清单3.1生成菜单栏及菜单项3.2监听事件处理4 程序运行与测试4.1文本区功能测试4.2文件菜单功能测试4.3编辑菜单功能测试4.4工具菜单功能测试0111111233455561013
2、5实训总结文本编辑器的设计和实现1实训目的1.1实训目的Java程序设计实训是计算机专业一门重要的专业技术基础实践课程。为 了能够较好的完成实训任务,学生应具备软件开发技术的基础知识,实训的主要 目的在于将理论与实际应用相结合,使用程序设计语言java,以及相关软件设 计开发知识完成软件的设计开发任务。本实训课程将为整个专业的学习以及软件 设计水平的提高打下良好的基础,提高学生项目分析、设计、编写、调试和测试 的能力,并培养基本的、良好的团队合作能力。1.2实训要求实训中要求综合运用所学知识,上机解决一些与实际应用结合紧密的、规模 较大的问题,通过分析、设计、编码、调试等各环节的训练,使学生深
3、刻理解、 牢固掌握软件开发技术,提高分析、解决实际问题的能力本次实训要求在学生能够较熟练使用java程序设计语言进行软件代码的编 写,同时还要具备较好的项目分析的能力,加深对相关课程基本容的理解。同时, 在程序设计方法以及上机操作等基本技能和科学作风方面受到比较系统和严格 的训练。2文本编辑器系统的分析与设计2.1系统功能描述通过此系统可以实现如下功能:1)可进行文件的新建、打开、保存、编辑等基本功能。2)支持复制、剪切和粘贴操作3)可进行查找和替换操作2.2系统模块设计根据系统自带的文档编辑器的特征设计,包括如下的功能模块:一、整体结构框架包括:菜单栏和文档编辑区二、每个框架分别包含不同的子
4、框架,各个模块的具体框架:菜单栏:文件、编辑、工具菜单栏中各个子菜单功能文件:新建、打开、保存、另存为、退出编辑:剪切、复制、粘贴工具:查找、替换子菜单功能的实现主要的几个功能介绍1)打开与另存为:两个窗体调用系统函数直接利用,注意格式的选择2)查找:查找容、查找、查找下一个文本编辑区监视文本容是否改变、监听光标所在位置2.3数据库结构设计1.程序E-R图3主要代码清单3.1生成菜单栏及菜单项艰 M g,ildHIIXLIrtHU-JJMEUfitht public void addmyMenu() /菜单函数,生成菜单(JMenuBar menubar 二 new JMenuBar();/
5、菜单栏添加若干菜单this.setJMenuBar(menubar);String menustr=文件,编辑”,工具”,帮助;/菜单栏 字符串数组JMenu menu = new JMenumenustr. length;for (int i = 0; i menu. length; i+) (/为菜单栏赋值menui= new JMenu(menustri);menubar.add(menui);String menuitemstr0=新建”,打开”,保存”,另存为,” 退出” ;/文件菜单中添加若干菜单项JMenultem menuitem0 = new JMenuItemmenuite
6、mstr0. length;for (int i = 0; i menuitem0. length; i+) (/为文件菜单赋值 menuitem0i= new JMenuItem(menuitemstr0i); menu0.add(menuitem0i); menuitem0i.addActionListener(this);/ 为每个菜单项注册监 听事件String menuitemstr1= ”剪切”,”复制”,”粘贴 ” ;/ 编辑菜单 中添加若干菜单项JMenultem menuitem1= new JMenuItemmenuitemstr1. length;for (int i =
7、 0; i menuiteml. length; i+) (menuitem1i= new JMenuItem(menuitemstr1i); menu1.add(menuitem1i); menuitem1i.addActionListener(this);/ 为每个菜单项注册监 听事件String menuitemstr2=”查找”,”替换” ;/工具菜单中添加若 干菜单项JMenuItem menuitem2 = new JMenuItemmenuitemstr2. length;for (int i = 0; i menuitem2. length; i+) (menuitem2i =
8、 new JMenuItem(menuitemstr2i); menu2.add(menuitem2i); menuitem2i.addActionListener(this);/ 为每个菜单项注册监 听事件JMenuItem menuitemstr3 二 new JMenuItem(”帮助”);/ 帮助菜单中添 加帮助菜单项menu3.add(menuitemstr3);menuitemstr3.addActionListener(this);/ 注册监听事件3.2监听事件处理注册监听事件,当进行操作时,监听事件活得事件源并选择相应的操作,对不同的事件调用 不同的函数,得到文本操作的不同结果
9、。class MyItemListener_ font implements ItemListener /字体监听器 public void itemStateChanged(ItemEvent e) (id_font =(java.awt.List)e.getSource().getSelectedIndex(); switch ( id_font)( case 0:(ta.setFont(new Font(”Times NewRoman ,Font. PLAIN ,ta.getFont().getSize() );/普通文字break;case 1:(ta.setFont(new Font
10、(Times New Roman,Font. BOLD ,ta.getFont().getSize() );/粗体文字break;case 2:(ta.setFont(new Font(Times New Roman,Font. ITALIC ,ta.getFont().getSize() );/斜体文字break;4程序运行与测试4.1文本区功能测试a) 字体的显示,开始的时候不做任何操作的时候显示的默认值,通过修改字体 的属性来修改字体。b) 对文本事件进行监听,如果文本编辑窗口中如果有事件触发,关闭时能够有 必要的信息提示。C)状态栏的可以正常显示文本的状态信息。4.2文件菜单功能测试文
11、件中的功能测试:a) 通过文件字符流读取文件,创建缓冲区存储文件流。b) 当保存文件时,先判断文件是否未被保存过,如果未被保存过,则创建 新文件并通过输出流来存储文件,当文件已经保存过再对文件进行修改 时,则会提示保存的消息窗体。c) 另存为是通过不同的方法来创建一个新的文件。附:打开与保存代码:miSave.addActionListener( new ActionListener()(public void actionPerformed(ActionEvent e) (if ( fileName.equals() )( /如果文件没有被保存过,即文件名为空FileDialog d二new
12、 FileDialog(mainFrame , save file, FileDialog. SAVE );/保存文件对话框d.addWindowListener( new WindowAdapter()( /关闭文件对话框窗口public void windowClosing(WindowEvent ee)(System. exit(0););d.setVisible(true);String s二ta.getText();/得到所输入的文本容try/异常处理(File f 二 new File( d.getDirectory()+d.getFile();/新建文件fileName 二 d.
13、getDirectory()+d.getFile();/得到文件名BufferedWriter bw 二 new BufferedWriter( new FileWriter (f);/ 输入到文件中bw.write(s , 0 , s.length();bw.close();catch(FileNotFoundException fe_)(System. out.println(file not found);System. exit(0);catch( IOException ie_)(System. out.println( IO error);System. exit(0);else
14、/如果文件已经保存过(String s二ta.getText();/得到所输入的文本容try/异常处理(File f 二 new File( fileName );/新建文件BufferedWriter bw 二 new BufferedWriter( new FileWriter (f);/ 输入到文件中bw.write(s , 0 , s.length();bw.close();catch(FileNotFoundException fe_)(System. out.println(file not found);System. exit(0);catch( IOException ie_)(System. out.println( IO error);System. exit(0););/另存为miSaveAs.addActionListener( new ActionListener()(public void actionPerformed(ActionEvent e) (Fi