文本编辑器地设计与实现

上传人:工**** 文档编号:474318020 上传时间:2023-07-11 格式:DOC 页数:27 大小:886KB
返回 下载 相关 举报
文本编辑器地设计与实现_第1页
第1页 / 共27页
文本编辑器地设计与实现_第2页
第2页 / 共27页
文本编辑器地设计与实现_第3页
第3页 / 共27页
文本编辑器地设计与实现_第4页
第4页 / 共27页
文本编辑器地设计与实现_第5页
第5页 / 共27页
点击查看更多>>
资源描述

《文本编辑器地设计与实现》由会员分享,可在线阅读,更多相关《文本编辑器地设计与实现(27页珍藏版)》请在金锄头文库上搜索。

1、word软 件 学 院课程设计报告书课程名称 设计题目 文本编辑器的设计与实现 专业班级 XXXXXXXXXXX 学 号 xxxxxxxxxx姓 名 xxx指导教师 2011 年 11月1 设计时间2011年11月2 设计目的面向对象程序设计是一门实践性很强的计算机专业根底课程,课程设计是学习完该课程后进展的一次较全面的综合练习。其目的在于通过实践加深学生对面向对象程序设计的理论、方法和根底知识的理解,掌握使用Java语言进展面向对象设计的根本方法,提高运用面向对象知识分析实际问题、解决实际问题的能力,提高学生的应用能力。目前文本编辑器种类很多,所提供的功能也很多,但是能满足用户实现多种功能和

2、进展Java的编译与运行很少,不能更好的适应当前用户的要求。本设计所完成的文本编辑器功能是针对学习Java程序语言,因此我们利用Java程序设计虚拟机和软件对用户与使用者的应用过程形成一整套完整的编写代码,编译,运行。3设计任务文本编辑器的设计与实现:设计一个类似于Windows记事本(Notepad)的Java程序。可以打开、新建、保存一个文本文件;对选中的文本进展各种编辑操作设置字体、字号、字型、对齐方式、背景、前景色、复制、粘贴、剪切、查找、替换等;在文本中能够插入对象。4 设计内容 需求分析的任务是确定功能必须完成的工作,也就是对目标系统提出完整、准确、清晰、具体的要求。简单文本编辑器

3、提供应用户根本的纯文本编辑功能,能够将用户录入的文本存储到本地磁盘中。能够读取磁盘中现有的纯文本文件,以与方便用户进展需要的编辑功能。文件操作能够实现新建、保存、打开文档等,编辑操作能过实现文本的剪贴、复制、粘贴等,格式操作能过实现字体设置、背景等,帮助操作能够实现关于主题的查看等功能。根本功能概括文本编辑器格式编辑黏贴打开 菜单保存新建退出另存为文件剪切黏贴查找复制字体字号插入对象替换功能架构图1.根本的Frame框架;2.菜单;3.打开文件对话框;4.保存文件对话框;5.颜色对话框;6.Choice下拉列表,运来实现字体设置;7.简单的帮助框架。文本编辑器的保存和打开功能的实现用文件对话框

4、与输入输出流来完成。先建立打开和保存对话框,在public void actionPerformed(ActionEvent e)里分别用FileWriter()和FileReader()方法实现保存和打开。filedialog_save=new FileDialog(this,保存文件对话框,FileDialog.SAVE);filedialog_save.setVisible(false);filedialog_load=new FileDialog(this,保存文件对话框,FileDialog.LOAD);filedialog_load.setVisible(false);filedi

5、alog_save.addWindowListener(new WindowAdapter()public void windowClosing(WindowEvent e)filedialog_save.setVisible(false););filedialog_load.addWindowListener(new WindowAdapter()public void windowClosing(WindowEvent e)filedialog_load.setVisible(false); );public void actionPerformed(ActionEvent e)if(e.

6、getSource()=itemSave)filedialog_save.setVisible(true);if(filedialog_save.getFile()!=null)try File file=new File(filedialog_save.getDirectory(), filedialog_save.getFile(); tofile=new FileWriter(file); out=new BufferedWriter(tofile); out.write(area.getText(),0,(area.getText().length(); out.close(); to

7、file.close();catch(IOException e1) else if(e.getSource()=itemLoad)filedialog_load.setVisible(true);area.setText(null);String s;if(filedialog_load.getFile()!=null)tryFile file=new File(filedialog_load.getDirectory(), filedialog_load.getFile(); file_reader=new FileReader(file); in=new BufferedReader(f

8、ile_reader); while(s=in.readLine()!=null) area.append(s+n); in.close(); file_reader.close();catch(IOException e1) 4.3.2字体,字形,字体大小的设置文本编辑器要实现对字体的设置,选用了GraphicsEnvironment对象调用String getAvailableFontFamilyNames()方法,该方法可以获取计算机上所有可用的字体名称,并存放到字符串数组中。Choice list;GraphicsEnvironment ge=GraphicsEnvironment.g

9、etLocalGraphicsEnvironment(); String fontName=ge.getAvailableFontFamilyNames();public void itemStateChanged(ItemEvent e)String name=list.getSelectedItem();Font f=new Font(name,Font.PLAIN,15);area.setFont(f);else if(e.getSource()=item8) /设置字形常规,倾斜,加粗Font font=area.getFont(); int style=font.getStyle()

10、;style=style0; area.setFont(new Font(,style,font.getSize();else if(e.getSource()=item9)Font font=area.getFont(); int style=font.getStyle();style=style2; area.setFont(new Font(,style,font.getSize();else if(e.getSource()=item10)Font font=area.getFont();int style=font.getStyle();style=style1; area.setF

11、ont(new Font(,style,font.getSize();else if(e.getSource()=item11) /设置字体大小Font font=area.getFont();int style=font.getStyle();area.setFont(new Font(font.getName(),style,12);else if(e.getSource()=item12)Font font=area.getFont();int style=font.getStyle(); area.setFont(new Font(font.getName(),style,24);el

12、se if(e.getSource()=item13)Font font=area.getFont();int style=font.getStyle(); area.setFont(new Font(font.getName(),style,36);4.3.3剪切,复制,粘贴设置文本编辑器中关于剪切,复制,粘贴功能的实现选用处理JTextArea的DocumentEvent事件,通过area.cut(),area.copy(),area.paste()方法,点击“编辑中相应菜单项可以选择将文本区中选中的内容剪切,复制,粘贴。public void changedUpdate(Document

13、Event e) String s=area.getText();public void removeUpdate(DocumentEvent e)changedUpdate(e);public void insertUpdate(DocumentEvent e)changedUpdate(e);public void actionPerformed(ActionEvent e) else if(e.getSource()=item2) area.cut();else if(e.getSource()=item3)area.copy();else if(e.getSource()=item4)area.paste(); 插入子菜单,删除子菜单,创建格式菜单与其菜单项JMenuItem insertItem=new JMenuItem(插入文本(K); insertItem.setMnemonic(K); editMenu.add(insertItem); insertItem.addActionListener( new ActionListener() public void actionPerformed(ActionEvent event) JPanel insertPanel=new JPanel(); JLabel insertLabel=new JLab

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 工作计划

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号