java记事本课程报告.doc
文本预览下载声明
记事本
一、需求分析
本次所设计的记事本主要是仿windows自带的记事本,实现了对文本文档编辑和操作的需求,记事本窗体顶部是菜单栏,分文件、编辑、格式、帮助四栏,
文件栏里有新建、打开、保存、另存为、退出五项,编辑栏里有撤消、剪贴、复制、粘贴、全选、删除、时间/日期、颜色八项,格式栏里有自动换行、字体两项,帮助栏里有关于记事本,点击时出现对话框显示记事本的相关信息。鼠标右键有弹出式菜单,还要有快捷方式(如:保存Ctrl+S)
二、概要设计
1 程序设计思路
在程序中,设计了一个菜单栏和一个文本区,设计过程中用到了JScrollPane,JMenu,JTextPane,JFileChooser,JColorChooser等。JMenu用来制作菜单,菜单包括文件、编辑、格式、帮助四项。JTextPane主要用来输入文本,JFileChooser 是保存和打开文件是用的文件选择器,JColorChooser是对文本颜色和文字颜色设置时用的调色板。
2 设计模块图
图1 设计模块图
三、运行环境、开发语言
Windows系统,java虚拟机,java语言。
四、详细设计
1 程序清单
程序中有几个功能是写在方法里面,具体如表1所示
表1 程序清单
文件名 功能
Notepad.java 新建、打开、保存文件,对文件的修改 对文件内容进行基本的编辑操作,内容格式修改 注册鼠标事件,有弹出式窗口,有快捷方式 对记事本基本信息的介绍 对于各功能的具体实现,大部分是直接在事件监听器里实现,详细过程请看下面的主要代码部分。
2 主要代码
2.1新建文件
为新建注册监听器,新建文件时,标题会换成“新建文本-记事本”,文本区会置空,如图2所示。
图2 新建窗口
miNew.addActionListener(new ActionListener(){
@Override public void actionPerformed(ActionEvent e){
if(content.equals(textArea.getText()))
textArea.setText();
else{
int value=JOptionPane.showConfirmDialog(null,是否保存所做修改,提示,JOptionPane.YES_OPTION);
if(value==JOptionPane.YES_OPTION){
if(file==null){
jfc.showSaveDialog(null);
file=jfc.getSelectedFile();
}
String text=textArea.getText();
try{
saveFile(file,text);
textArea.setText();
}catch(IOException ex){
}
}
else if(value==JOptionPane.NO_OPTION){
textArea.setText();}
}
jf.setTitle(新建文本 - 记事本);
}
});
2.2打开文件
为打开注册监听器,打开文件时,会出现打开文件选择器,选择文件后,将文件内容输出到文本区,同时标题改为“文件名-记事本”,如图3所示。
图3 打开文件的文件选择器
miOpen.addActionListener(new ActionListener(){
@Override public void actionPerformed(ActionEvent e){
jfc.showOpenDialog(null);
file=jfc.getSelectedFile();
if(file==null){
textArea.setText(没有选择文件);
return; }
textArea.setText();
try{
String content=getFileContent(file);
textArea.setText(content);
jf.setTitle(file.getName()+ - 记事本);
}
catch(IOException ex
显示全部