简易记事本课程设计

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

简易记事本程序设计

1.课程概述:

(1)本次课程设计的任务:通过编写Java程序,实现简易记事本的功能,包括菜单栏设计的文件、编辑、查找、帮助菜单以及相应菜单项功能的实现

(2)本次课程设计的目的:

a.复习、巩固Java语言的基础知识,进一步加深对Java语言的理解和掌握

b.课程设计为学生提供了一个既动手又动脑,独立实践的机会,将课本上的理论知识和实际有机的结合起来,锻炼学生的分析解决实际问题的能力。提高学生适应实际,实践编程的能力;

c.培养学生在项目开发中创新意识及能力;

d.通过编写一个基于JAVA的应用系统综合实例,来掌握Java语言编程技巧,熟练运用各部分知识。

(3)本次课程设计的要求:

a.学生必须独立完成设计任务,严禁抄袭或找人代做等行为,一经发现成绩以不及格计。

b.课程设计期间要严格遵守学习纪律,遵守作息时间,不得迟到、早退和旷课。

c.课程设计完毕应提交如下设计成果:(1)源程序(打包成如下文档名:班级_本人学号_本人姓名_课题名称.rar);(2)课程设计报告。

d.题目来自网上或其他参考书目的,必须在原来基础上增加2-3个功能。2.设计思路及采取的方案:

设计思路

a.界面设计:在主界面上设计一个Frame容器,添加菜单条和文本域,创建了一个标题为“记事本”的窗口,其中包括菜单条(菜单及菜单项)。

b.功能设计:添加相应的监听器进行监听,分别实现对文件的操作功能,点击不同菜单项时,显示不同界面。

c. 代码设计:编写每个控件的相关代码,并进行调试。

采取的方案

通过编写Java程序代码,包括利用类MyMemo添加需要的菜单及菜单项;利

用类MyMenuBar制作菜单条;利用类MyFile制作打开、保存文件时出现的提示;利用类MyFindDialog实现了查找菜单中的查找、查找替换菜单项功能;并添加了监视器。实现了文件的新建、打开、保存、全选;编辑的剪切、复制、粘贴、清除、全选;查找的查找、查找替换;帮助的我的记事本信息;并且点进打开与保存菜单项时系统会自动打开相应的打开、保存相应的提示信息。

3.取得的结果:

(1) 界面设计:

通过类MyMemo创建菜单条、各菜单、下拉菜单项和文本域,在文本域中显示编辑的文件信息:

public class MyMemo extends Frame implements ActionListener{ private TextArea editor=new TextArea(); //可编辑的TextArea

private MyFile mf=new MyFile(this);//MyFile对象

private MyClipboard cb=new MyClipboard();

private MyFindDialog findDlg=new MyFindDialog(this,editor);

public MyMemo(String title){ //构造函数

super(title);

MyMenuBar mb=new MyMenuBar(this);

//添加需要的菜单及菜单项

mb.addMenus(new String[]{"文件","编辑","查找","帮助"});

mb.addMenuItems(0,new String[]{"新建","打开","保存",null,"全选"});

mb.addMenuItems(1,new String[]{"剪切","复制","粘贴","清除

",null,"全选"});

mb.addMenuItems(2,new String[]{"查找",null,"查找替换"});

mb.addMenuItems(3,new String[]{"我的记事本信息"});

四个菜单分别为:文件、编辑、查找、帮助,结果如下图:

(2)功能设计:

a.通过循环嵌套结构对每个菜单下的菜单项进行注册监听。点击不同菜单项时,显示不同界面。主要代码:

public void addActionListener(ActionListener al){

for(int i=0;i

for(int j=0;j

getMenu(i).getItem(j).addActionListener(al);

}

b.对查找、查找替换菜单项进行监听,代码为:

bFind.addActionListener(this);

bReplace.addActionListener(this);

(3)代码设计:

构建菜单栏及下拉菜单项

a.文件菜单下的新建、打开、保存相关代码:

class MyFile{

private FileDialog fDlg;

public MyFile(Frame parent){

fDlg=new FileDialog(parent,"",FileDialog.LOAD);

}

private String getPath(){

return fDlg.getDirectory()+"\\"+fDlg.getFile();

}

public String getData() throws IOException{

fDlg.setTitle("打开");

fDlg.setMode(FileDialog.LOAD);

fDlg.setVisible(true);

BufferedReader br=new BufferedReader(new FileReader(getPath()));

StringBuffer sb=new StringBuffer();

String aline;

while((aline=br.readLine())!=null)

sb.append(aline+'\n');

br.close();

return sb.toString();

}

public void setData(String data) throws IOException{

fDlg.setTitle("保存");

fDlg.setMode(FileDialog.SAVE);

fDlg.setVisible(true);

相关文档
最新文档