Java课程设计实验报告封面

实验报告

课程名称Java程序设计(课程设计)

实验项目名称  我的记事本         

班级与班级代码10专软件技术一班 

实验室名称(或课室)            

          软件技术          

任课教师                

    号:    310010122          

          林樾             

实验日期:  20## 12  20  

 


广东商学院华商学院教务处  制 

1.  设计思路和框图;

1.1程序中主要的类的功能和结构;

设计两个类,一个jsb类,具有程序的要求和功能再创建一个keshe主类,在主类中创建一个jsb类的对象,就可以直接在编译器中运行程序。

1.1.1界面设计

在主界面中设计一个Frame容器,并在其中加入一个下拉菜单和一个文本域控件,把该容器设置为GridLayout(1,1)布局。

1.1.2功能设计

在下拉菜单中加入子菜单并进行监听,分别实现对文件的操作功能。点击不同菜单项时,显示不同界面。

1.1.3代码设计

编写每个控件的相关代码,并进行调试。

2.  实现各种功能的主要代码

2.1创建一个下拉菜单和文本域,在文本域中显示编辑的文件信息。

f=new Frame(s);

p1=new TextArea("");

f.setSize(400,600);

f.setBackground(Color.white);

f.setVisible(true);

menubar=new MenuBar();

menu1=new Menu("文件");

menu2=new Menu("编辑");

menu3=new Menu("帮助");

item1=new MenuItem("新建");

item2=new MenuItem("打开");

item3=new MenuItem("保存");

item4=new MenuItem("另存为");

文本框:  item5=new MenuItem("退出");

item6=new MenuItem("全选");

item7=new MenuItem("复制");

item8=new MenuItem("剪切");

item9=new MenuItem("粘贴");

item10=new MenuItem("关于");

    menu1.add(item1);

    menu1.add(item2);

    menu1.add(item4);

menu1.add(item5);

menu2.add(item6);

menu2.add(item7);

menu2.add(item8);

menu2.add(item9);

menu3.add(item10);

menubar.add(menu1);

menubar.add(menu2);

menubar.add(menu3);

f.setMenuBar(menubar);

2.2 对每个菜单项进行注册监听。点击不同菜单项时,显示不同界面。

item1.addActionListener(this);

item2.addActionListener(this);

item3.addActionListener(this);

item4.addActionListener(this);

item5.addActionListener(this);

item6.addActionListener(this);

item7.addActionListener(this);

item8.addActionListener(this);

item9.addActionListener(this);

item10.addActionListener(this);

2.3 部分菜单项的相关代码:

2.3.1新建文件

if (e.getSource()==item1)

{ if (i==0&&(ss.length()!=0)){ bc(); }

else

 p1.setText("");i=0;f.setTitle("文件对话框"); }

打开文件

if (e.getSource()==item2)

{ fd=new FileDialog(f,"打开文件",0);

fd.setVisible(true);

try{ file=new File(fd.getDirectory(),fd.getFile());

f.setTitle(fd.getFile()+"文件对话框");

FileReader fr=new FileReader(file);

BufferedReader br=new BufferedReader(fr);

String line = null;

String view = "";

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

{ view += line+"\n"; }

p1.setText(view);

br.close();

fr.close(); }

catch(IOException expIn)

{} }

2.3.2复制文件

if (e.getSource()==item7)

{ try{

String str=p1.getSelectedText();

if(str.length()!=0)

{ strt=str;

} }catch(Exception ex)

{ } }

2.3.3 粘贴文件

if (e.getSource()==item9)

{ if(strt.length()>0)

{ p1.insert(strt,p1.getCaretPosition());

}

2.3.4退出记事本

if (e.getSource()==item5)

{ if (i==0 &&(ss.length()!=0))

{ bc(); } else { System.exit(0); } }

3. 程序调试以及存在的不足需要改进的地方

3.1界面调试

确定主窗体,设置主窗体的属性,对窗体进行布局,加入所需控件并对控件进行初始化。在完成加入菜单控件后,不能缺少 f.setMenuBar(menubar); 语句,将menubar设为主窗体的菜单条,否则会看不到菜单栏。

 

3.2功能调试

对所有菜单项进行注册监听。当进行除保存以外的菜单项的功能外,在actionPerformed中要编写判断界面是否已经打开或者编辑了文件,如果是,在进行别的功能之前,先对本文件的保存功能,以免文件的丢失。在具体实现中可以用变量i来判断文件是否处于保存状态。

 

  

3.3 程序不足

 3.3.1程序缺乏查找替换功能;

 3.3.2不能较好地使用输入输出流;

     3.3.3 代码过多,需要简化代码实现更多的功能; 

姓名                     实验报告成绩          

评语

                         指导教师(签名)              

                                                 

说明:指导教师评分后,实验报告交系办公室保存。

 

第二篇:Java课程设计说明书封皮

长 春 大 学

课 程 设 计 说 明 书

题目名称 院(系) 计算机科学技术学院 专业(班级) 学生姓名指导教师起止日期20xx年1月6日至20xx年1月10日

相关推荐