《面向对象程序设计》课程设计JAVA文本编辑器的设计与实现Word下载.docx
- 文档编号:14171433
- 上传时间:2022-10-19
- 格式:DOCX
- 页数:23
- 大小:115.09KB
《面向对象程序设计》课程设计JAVA文本编辑器的设计与实现Word下载.docx
《《面向对象程序设计》课程设计JAVA文本编辑器的设计与实现Word下载.docx》由会员分享,可在线阅读,更多相关《《面向对象程序设计》课程设计JAVA文本编辑器的设计与实现Word下载.docx(23页珍藏版)》请在冰豆网上搜索。
文本编辑器的设计与实现:
设计一个类似于Windows记事本(Notepad)的Java程序。
可以打开、新建、保存一个文本文件;
对选中的文本进行各种编辑操作(设置字体、字号、字型、对齐方式、背景、前景色、复制、粘贴、剪切、查找、替换等);
在文本中能够插入对象。
4设计内容
4.1需求分析
需求分析的任务是确定功能必须完成的工作,也就是对目标系统提出完整、准确、清晰、具体的要求。
简单文本编辑器提供给用户基本的纯文本编辑功能,能够将用户录入的文本存储到本地磁盘中。
能够读取磁盘中现有的纯文本文件,以及方便用户进行需要的编辑功能。
文件操作能够实现新建、保存、打开文档等,编辑操作能过实现文本的剪贴、复制、粘贴等,格式操作能过实现字体设置、背景等,帮助操作能够实现关于主题的查看等功能。
4.2概要设计
4.2.1程序基本功能概括
打开
保存
文件新建
另存为
退出
复制
剪切
编辑查找黏贴文本编辑器
替换
黏贴
字体
格式
字号
插入对象菜单
图4.2.1功能架构图4.2.2程序主要组件概括
1.基本的Frame框架;
2.菜单;
3.打开文件对话框;
4.保存文件对话框;
5.颜色对话框;
6.Choice下拉列表,运来实现字体设置;
7.简单的帮助框架。
4.3详细设计
4.3.1文件打开与保存
文本编辑器的保存和打开功能的实现用文件对话框及输入输出流来完成。
先建立打开
和保存对话框,在publicvoidactionPerformed(ActionEvente)里分别用FileWriter()和
FileReader()方法实现保存和打开。
filedialog_save=newFileDialog(this,"
保存文件对话框"
FileDialog.SAVE);
filedialog_save.setVisible(false);
filedialog_load=newFileDialog(this,"
FileDialog.LOAD);
filedialog_load.setVisible(false);
filedialog_save.addWindowListener(newWindowAdapter()
{
publicvoidwindowClosing(WindowEvente)
}
});
filedialog_load.addWindowListener(newWindowAdapter()
publicvoidactionPerformed(ActionEvente)
if(e.getSource()==itemSave)
filedialog_save.setVisible(true);
if(filedialog_save.getFile()!
=null)
try{Filefile=new
File(filedialog_save.getDirectory(),
filedialog_save.getFile());
tofile=newFileWriter(file);
out=newBufferedWriter(tofile);
out.write(area.getText(),0,(area.getText()).length());
out.close();
tofile.close();
catch(IOExceptione1){}
elseif(e.getSource()==itemLoad)
filedialog_load.setVisible(true);
area.setText(null);
Strings;
if(filedialog_load.getFile()!
try{Filefile=new
File(filedialog_load.getDirectory(),
filedialog_load.getFile());
file_reader=newFileReader(file);
in=newBufferedReader(file_reader);
while((s=in.readLine())!
area.append(s+'
\n'
);
in.close();
file_reader.close();
4.3.2字体,字形,字体大小的设置
文本编辑器要实现对字体的设置,选用了GraphicsEnvironment对象调用String[]
getAvailableFontFamilyNames()方法,该方法可以获取计算机上所有可用的字体名称,并存
放到字符串数组中。
Choicelist;
GraphicsEnvironmentge=GraphicsEnvironment.getLocalGraphicsEnvironment();
StringfontName[]=ge.getAvailableFontFamilyNames();
publicvoiditemStateChanged(ItemEvente)
Stringname=list.getSelectedItem();
Fontf=newFont(name,Font.PLAIN,15);
area.setFont(f);
elseif(e.getSource()==item8)//设置字形(常规,倾斜,加粗)
Fontfont=area.getFont();
intstyle=font.getStyle();
style=style^0;
area.setFont(newFont("
"
style,font.getSize()));
elseif(e.getSource()==item9)
style=style^2;
elseif(e.getSource()==item10)
style=style^1;
elseif(e.getSource()==item11)//设置字体大小
area.setFont(newFont(font.getName(),style,12));
elseif(e.getSource()==item12)
area.setFont(newFont(font.getName(),style,24));
elseif(e.getSource()==item13)
area.setFont(newFont(font.getName(),style,36));
4.3.3剪切,复制,粘贴设置
文本编辑器中关于剪切,复制,粘贴功能的实现选用处理JTextArea的DocumentEvent
事件,通过area.cut(),area.copy(),area.paste()方法,点击“编辑”中相应菜单项可以选择
将文本区中选中的内容剪切,复制,粘贴。
publicvoidchangedUpdate(DocumentEvente)
Strings=area.getText();
publicvoidremoveUpdate(DocumentEvente)
changedUpdate(e);
publicvoidinsertUpdate(DocumentEvente)
elseif(e.getSource()==item2)
area.cut();
elseif(e.getSource()==item3)
area.copy();
elseif(e.getSource()==item4)
area.paste();
4.3.4插入子菜单,删除子菜单,创建格式菜单及其菜单项
JMenuIteminsertItem=newJMenuItem("
插入文本(K)"
insertItem.setMnemonic('
K'
editMenu.add(insertItem);
insertItem.addActionListener(
newActionListener(){
publicvoidactionPerformed(ActionEventevent){
JPanelinsertPanel=newJPanel();
JLabelinsertLabel=newJLabel("
要插入的内容"
JTextFieldinputText=newJTex
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 面向对象程序设计 面向 对象 程序设计 课程设计 JAVA 文本 编辑器 设计 实现
![提示](https://static.bdocx.com/images/bang_tan.gif)