版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、精选优质文档-倾情为你奉上辽 宁 工 业 大 学JAVA程序设计 课程设计(论文)题目: JAVA简单记事本程序 院(系): 软件学院 专业班级: 软件工程 班 学 号: 学生姓名: 指导教师: 教师职称: 起止时间: 程序设计专题(报告)任务及评语院(系):软件学院 教研室:软件教研室学 号 学生姓名 专业班级 程序设计(报告)题目 JAVA简单记事本程序程序设计(报告)任务程序设计专题的任务与要求:(1)掌握Java编程、面向对象的基础知识。(2)较熟练地编写Java应用程序Application。(3)了解Java的常用标准类库、编程技巧、异常处理。(5)联系已学过的内容,巩固所学的理论
2、,增强独立工作能力。(6)通过设计主要使学生有一个独立编写程序的过程,对理论学习及动手能力都有一个很大的提高。(7)通过本次设计,进一步培养学生热爱专业的思想,同时对本专业综合素质的提高起一个积极的推动作用。课程设计过程中,要严格遵守实践环节的时间安排,听从指导教师的指导。正确地完成上述内容,记录实习日记,规范完整地撰写出课程设计报告。指导教师评语及成绩成绩: 指导教师签字: 2014 年 6 月 24 日专心-专注-专业目 录第1章 课程设计的目的与要求1.1 课程设计目的JAVA程序设计是计算机相关专业的必修专业基础课程,其实践性、应用性很强。实践教学环节是必不可少的一个重要环节。本课程的
3、程序设计专题实际是计算机相关专业学生学习完JAVA程序设计课程后,进行的一次全面的综合训练,JAVA程序设计的设计目的是加深对理论教学内容的理解和掌握,使学生较系统地掌握程序设计及其在网络开发中的广泛应用,基本方法及技巧,为学生综合运用所学知识,利用软件工程为基础进行软件开发、并在实践应用方面打下一定基础。1.2 课程设计的实验环境硬件要求能运行Windows 9.X操作系统的微机系统。JAVA程序设计语言及相应的集成开发环境,J2SDK和ECLIPSE开发工具。1.3 课程设计的预备知识熟悉JAVA语言及ECLIPSE开发工具。1.4 课程设计要求按课程设计指导书提供的课题,要求学生在自行完
4、成各个操作环节,并能实现且达到举一反三的目的,完成一个项目解决一类问题。要求学生能够全面、深入理解和熟练掌握所学内容,并能够用其分析、设计和解答类似问题;对此能够较好地理解和掌握,能够进行简单分析和判断;能编写出具有良好风格的程序;掌握JAVA程序设计的基本技能和面向对象的概念和方法;了解多线程、安全和网络等编程技术。同时培养学生进行分析问题、解决问题的能力;培养学生进行设计分析、设计方法、设计操作与测试、设计过程的观察、理解和归纳能力的提高。第2章 课程设计内容2.1课题描述 简单记事本程序,使初级使用者很容易掌握。从日常应用方面来说,一个文本编辑器只需一些简单实用的功能就够了。本程序设计就
5、是依照这样一种使用需要设计了一个简单的记事本程序。2.2 系统设计(1)设计编写一个简单记事本程序,要求包含以下菜单项:文件 新建、打开、保存、退出编辑、剪切、拷贝、粘贴、查找、帮助、关于。(2)实现文件和编辑菜单里的功能。2.2.1功能分析简单记事本程序要构建的记事本程序参照了Windows操作系统的记事本工具,其功能有以下几个方面: (1)、菜单中有“文件”,“编辑”,“帮助”三个主菜单。 (2)、“文件”有“新建”“打开”“保存”“另存为”“退出”五个子菜单:分别用于新建文件,打开文件,保存文件,“另存为文件”,“退出记事本”。 (3)、“编辑”中有“全选”
6、、“复制”、“剪切”、“粘贴”四个字菜单:用于全选文字、复制文字、剪切文字、粘贴文字。(4)、“帮助”菜单。2.2.2面向对象设计1. 类的设计:含有FileInAndOut类,该类中有两个方法分别是fileInput和fileWrite,含有MyNote类,该类中含有接口ActionListener和接口重写的方法actionPerformed。2. 系统UML类图FileInAndOutstrRead():StringfileInput():voidfileWrite():MyNotef():Frameta():TextAreamb():MenuBarstrme():Stringstrmi
7、():StringfileDir():Stringfilename():Stringtemp():Stringme():Menumi():MenuIteml1,l2():Labelt1,t2():TextFieldb1,b2,b3():ButtondiaFind,diaAbout():Dialog2.2.3详细设计1、系统流程图:开始输入文字?新建打开保存另存为剪切复制粘贴删除查找替换全选关于退出结束NY2、功能结构图开始“文件”菜单新建另存为File=null打开用JFileChooser()选择所有打开文件路径用unfold()读取所选的文件内容到记事本保存用sava()保存文件用JFil
8、eChooser()选择文件另存的路径用sava()保存文件退出或关闭文件是否修改用sava()保存文件Y结束N 图一:“文件”菜单操作流程图用close()关闭文件开始“编辑”菜单剪切全选设置修改标签,text.cut()复制用text.copy()实现粘贴设置修改标签,text.paste()删除设置修改标签,text.replaceRange("", start, end);查找替换用FindAndReplace方法实现用text.selectAll()实现退出或关闭文件是否修改用sava()保存文件并结束用close()关闭文件YN 图二:“编辑”菜单操作流程图开始
9、“帮助”菜单关于记事本显示记事本的有关信息结束 图三:“帮助”菜单操作流程图2.3程序实现2.3.1源码分析import java.io.*;import java.awt.*;import java.awt.event.*;class FileInAndOut public static String fileInput(String fName)String strRead=""try FileReader fr=new FileReader(fName);BufferedReader br=new BufferedReader(fr); String aline=ne
10、w String(); while(aline=br.readLine()!=null)strRead=strRead+aline;br.close();fr.close(); catch (FileNotFoundException e) e.printStackTrace(); catch (IOException e) e.printStackTrace();return strRead;public static void fileWrite(String fName,String temp)try FileWriter fw=new FileWriter(fName);Buffere
11、dWriter bw=new BufferedWriter(fw);bw.write(temp);bw.close();fw.close(); catch (IOException e) e.printStackTrace();public class MyNote implements ActionListener private Frame f;private TextArea ta;private MenuBar mb;private String strme="文件","编辑","帮助"private String strmi
12、="新建","打开","保存","退出","剪切","拷贝","粘贴","查找","关于"private String fileDir,fileName,temp=""private Menu me;private MenuItem mi;private Label l1,l2;private TextField t1,t2;private Button b1,b2,b3;private Dial
13、og diaFind,diaAbout;public MyNote()f=new Frame("无标题-我的记事本");ta=new TextArea();f.add(ta);mb=new MenuBar();f.setMenuBar(mb);mi=new MenuItemstrme.length;me=new Menustrme.length;for(int i=0;i<strme.length;i+)mei=new Menu(strmei);mb.add(mei);mii=new MenuItemstrmii.length;for(int j=0;j<str
14、mii.length;j+)miij=new MenuItem(strmiij);mei.add(miij);miij.addActionListener(this);f.addWindowListener(new WindowAdapter()public void windowClosing(WindowEvent e)System.exit(0););f.setSize(400,300);f.show();diaFind=new Dialog(f,"查找",true);diaFind.setLayout(new FlowLayout();diaFind.setSize
15、(260,120);l1=new Label("查找内容");l2=new Label("替 换 为");t1=new TextField(20);t2=new TextField(20);b1=new Button("下一个");b2=new Button("替换");b3=new Button("取消");diaFind.add(l1);diaFind.add(t1);diaFind.add(l2);diaFind.add(t2);diaFind.add(b1);diaFind.add(b2
16、);diaFind.add(b3);diaFind.addWindowListener(new WindowAdapter()public void windowClosing(WindowEvent e)diaFind.dispose(););public void actionPerformed(ActionEvent e)String cmd=e.getActionCommand();if(cmd.equals("新建")fileDir=""fileName=""ta.setText("");f.setTit
17、le("无标题-我的记事本");if(cmd.equals("打开")FileDialog diaOpen=new FileDialog(f,"",FileDialog.LOAD);diaOpen.show();fileDir=diaOpen.getDirectory();fileName=diaOpen.getFile();if(!fileName.equals("")ta.setText(FileInAndOut.fileInput(fileDir+fileName);f.setTitle(fileName+&
18、quot;-我的记事本");if(cmd.equals("保存")FileDialog diaSave=new FileDialog(f,"",FileDialog.SAVE);diaSave.show();fileDir=diaSave.getDirectory();fileName=diaSave.getFile();if(!fileName.equals("")FileInAndOut.fileWrite(fileDir+fileName,ta.getText();f.setTitle(fileName+"-
19、我的记事本");if(cmd.equals("退出")System.exit(0);if(cmd.equals("剪切")int x,y;x=ta.getSelectionStart();y=ta.getSelectionEnd();temp=ta.getSelectedText();ta.replaceRange("",x,y);if(cmd.equals("拷贝")temp=ta.getSelectedText();if(cmd.equals("粘贴")ta.replaceRang
20、e(temp,ta.getSelectionStart(),ta.getSelectionEnd();if(cmd.equals("查找")diaFind.show();if(cmd.equals("关于") public static void main(String args) new MyNote();2.3.1运行结果1:界面设计创建一个下拉菜单和文本域,在文本域中显示编辑的文件信息。主要代码:f=new Frame(s); p1=new TextArea(""); f.setSize(400,600); f.setBackg
21、round(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("另存为"
22、;); 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.a
23、dd(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:功能设计对每个菜单项进行注册监听。点击不同菜单项时,显示不同界面。主要代码item1.addActionListener(this); item2.addActionListener(this); item3.addActionListener(this); it
24、em4.addActionListener(this); item5.addActionListener(this); item6.addActionListener(this); item7.addActionListener(this); item8.addActionListener(this); item9.addActionListener(this); item10.addActionListener(this); 3:代码设计部分菜单项的相关代码:新建文件if (e.getSource()=item1) if (i=0&&(ss.length()!=0) bc()
25、; 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 += lin
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 建筑行业知识产权专员工作面试经验
- 教育行业人力资源面试指南:学校教务主任面试全解
- 2026年山东东营市高三一模高考化学试卷试题(含答案详解)
- 企业行政管理中的办公设备管理要点
- 华夏基金投资策略及组合调整方案
- 张国立经典小品演讲稿
- 专题党课:科技赋能守初心 实干笃行育新人
- 学生代表演讲稿落款
- 我为学院办实事演讲稿
- 2021公司老板演讲稿
- 2023年湖南机电职业技术学院单招综合素质题库及答案解析
- LY/T 1705-2007管氏肿腿蜂人工繁育及应用技术规程
- GB/T 5154-2022镁及镁合金板、带材
- 马工程《刑法学(下册)》教学课件 第17章 危害国家安全罪
- 细胞生物学CRISPR-CAS9-课件
- 建筑工程项目管理综合练习及答案
- 复杂网络-课件
- 楼地面装饰工程计量与计价
- 2018MBA数学考研真题及解析
- 学生预登信息采集表
- 新能源汽车维护与保养教案及工单
评论
0/150
提交评论