基于java的记事本程序课程设计(含源文件)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1 问题描述
设计一个具有GUI界面的记事本,含有简单的文字编辑功能,如:剪切、复制、粘贴、删除;还能实现保存、另存为、设置字体和颜色等功能。
这次课程设计由**、**和我三个人合作完成。**主要负责3概要设计和5测试分析。**4.1GUI程序界面设计,我负责4. 2JM4类的实现。由于4.3事件处理和撰写程序关系密切,这两项都由**负责。
2 需求分析
本程序要构建的记事本程序参照了Windows操作系统的记事本工具,其功能有以下几个方面:
(1)、菜单中有“文件”、“编辑”、“格式”、“帮助”四个主菜单;
(2)、“文件”有“新建”、“打开”、“保存”、“另存为”、“退出”分别用于新建文件,打开文件,保存文件,另存文件,退出记事本。
(3)、“编辑”有“剪切”、“复制”、“粘贴”三个子菜单:用于剪切文字,复制文字,粘贴文字,删除文字。
(4)、“格式”中,有“字体”、“颜色”两个子菜单:用于设置文字的字体而和颜色,字体有“宋体”、“楷体”、“黑体”颜色有“红”、“蓝”、“绿”。
(5)、“帮助”菜单中有“关于”的子菜单,用于描述记事本程序的相关信息。
(6)、还有弹出菜单也能实现“剪切”、“复制”、“粘贴”三个子菜单的功能。
3 概要设计
3.1自定义类说明
3.1.1 类名: JM
(1)作用: 主类
(2)继承的父类: JFrame类
(3)成员变量说明:
JMenuBar mb=new JMenuBar(); //定义一个菜单项
/******定义各个菜单及其菜单项******/
JMenu m1=new JMenu("文件(F)");
JMenuItem n=new JMenuItem("新建");
JMenuItem open=new JMenuItem("打开(O)... Ctrl+O"); JMenuItem save=new JMenuItem("保存(S)... Ctrl+S"); JMenuItem save_as=new JMenuItem("另存为(A)...Ctrl+A"); JMenuItem exit=new JMenuItem("退出");
JMenu m2=new JMenu("编辑(E)");
JMenuItem copy=new JMenuItem("复制(C) Ctrl+C"); JMenuItem cut=new JMenuItem("剪切(X) Ctrl+X"); JMenuItem paste=new JMenuItem("粘贴(P) Ctrl+P");
JMenu m3=new JMenu("格式(O)");
JMenu f1=new JMenu("字体(F)");
JMenuItem i11=new JMenuItem("宋体");
JMenuItem i12=new JMenuItem("楷体");
JMenuItem i13=new JMenuItem("黑体");
JMenu color=new JMenu("颜色(C)");
JMenuItem i21=new JMenuItem("红");
JMenuItem i22=new JMenuItem("蓝");
JMenuItem i23=new JMenuItem("绿");
JMenu m4=new JMenu("帮助(H)");
JMenuItem about=new JMenuItem("关于");
/*****定义弹出菜单及其菜单项*****/
JPopupMenu pm=new JPopupMenu();
JMenuItem item1=new JMenuItem("复制");
JMenuItem item2=new JMenuItem("剪切");
JMenuItem item3=new JMenuItem("粘贴");
/***********编辑区**********/
String s;
Container c;
JTextArea editor=new JTextArea(s);
(4)主要方法说明:
JM( )方法创建一个窗口并设置窗口的相应参数,以及把各个项目加到窗上private void addJMenuBar( )方法把各个菜单添加到菜单棒上private void addFileMenu( ) private void addEditMenu( ) private void addFormMenu( ) private void addHelpMenu( ) private void addJPopupMenu( )各个方法则把相应的菜单项添加到各自的“文件”、“编辑”、“格式”、“帮助”菜单上,及弹出菜单上
3.1.2 类名: JM4
(1)作用: 主类
(2)继承的父类: JM类
(3)主要成员方法说明:
编辑区键盘事件:KeyListener类如果记事本的编辑区内用键盘输入了字符,就能够被程序监听;
editor.addKeyListener( new KeyAdapter()
{public void keyTyped(KeyEvent e){flag=1;}});
窗口的事件监听:windowListener类;
class windowListener extends WindowAdapter
{
public void windowClosing(WindowEvent e)
{
if(flag==0)System.exit(0);
else close();
}
}