




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、精选优质文档-倾情为你奉上Java语言程序设计B报告 题目:编写一个记事本程序一要求:用图形用户界面实现。能实现编辑、保存、另存为、查找替换等功能。提示:使用文件输入输出流。2 课程设计思路。 设计两个类,一个记事本的类(JSB),具有程序的要求和功能再创建一个课设的主类(KESHE),在主类中创建一个JSB类的对象,就可以直接在编译器中运行程序。 在主界面中设计一个Frame容器,并在其中加入一个下拉 菜单和一个文本域控件,把该容器设置为GridLayout(1,1)布局。 3 课程设计实现功能结构图。 3.1“文件”菜单。开始“文件”菜单新建另存为File=null打开用JFileChoo
2、ser()选择所有打开文件路径用unfold()读取所选的文件内容到记事本保存用sava()保存文件用JFileChooser()选择文件另存的路径用sava()保存文件退出或关闭文件是否修改用sava()保存文件Y结束N图3.2 “文件”菜单操作流程图用close()关闭文件3.2“编辑”菜单。 开始“编辑”菜单剪切全选设置修改标签,text.cut()复制用text.copy()实现粘贴设置修改标签,text.paste()删除设置修改标签,text.replaceRange(, start, end);查找替换用FindAndReplace方法实现用text.selectAll()实现退
3、出或关闭文件是否修改用sava()保存文件并结束用close()关闭文件YN图3.3 “编辑”菜单操作流程图四记事本实现功能代码实现。 4.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(编辑); item1=new MenuItem(新建); item2=new MenuItem(打开); it
4、em3=new MenuItem(保存); item4=new MenuItem(另存为); item5=new MenuItem(退出); item6=new MenuItem(全选); item7=new MenuItem(复制); item8=new MenuItem(剪切); item9=new MenuItem(粘贴); menu1.add(item1); menu1.add(item2); menu1.add(item4); menu1.add(item5); menu2.add(item6); menu2.add(item7); menu2.add(item8); menu2.a
5、dd(item9); menubar.add(menu1); menubar.add(menu2); f.setMenuBar(menubar);程序代码实现截图:4.2功能代码详细设计。 4.2.1新建文件。 if (e.getSource()=item1) if (i=0&(ss.length()!=0) bc(); else p1.setText();i=0;f.setTitle(文件对话框); 4.2.2打开文件。 if (e.getSource()=item2) fd=new FileDialog(f,打开文件,0); fd.setVisible(true); try file=ne
6、w 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)
7、4.2.3复制文件。 if (e.getSource()=item7) try String str=p1.getSelectedText(); if(str.length()!=0) strt=str; catch(Exception ex) 4.2.4粘贴文件。 if (e.getSource()=item9) if(strt.length()0) p1.insert(strt,p1.getCaretPosition(); 4.2.5退出记事本。 if (e.getSource()=item5) if (i=0 &(ss.length()!=0) bc(); else System.exi
8、t(0); 5 JAVA课程设计个人总结。 这个学期我们学习了JAVA语言,这对于我们来说是一门十分陌生的编程语言,在学习的过程中,我感到了这门语言的学习有一定的困难,与C、C+语言相比需要克服的困难也相对多一些。在学习了JAVA课程后,我们通过这次的JAVA课程设计复习和掌握我们学习的JAVA语言知识,并且在课程设计的过程中巩固和运用相关的知识,提高自己的JAVA编程能力。 通过这次的JAVA课程设计,我更好地了解了JAVA的编程方法,并且在遇到困难的时候,能主动请教身边的同学,不仅仅培养了我的编程能力,在与同学的交流中我也更好的培养了与其他人的交流能力,相信通过这次的JAVA课程设计,我更
9、好地学习了JAVA,相信我自己在以后的学习中能继续学习JAVA,在更好地丰富自己JAVA知识的同时,积极提高自己的JAVA编程能力,在以后能更好地掌握JAVA语言。JAVA语言课程设计程序源代码: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 B
10、ufferedReader(fr);String aline=new 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 FileWrite
11、r fw=new FileWriter(fName);BufferedWriter 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 Dialog diaFind,diaAbout;public MyNote()f=new Frame(我的记事本);ta=new TextArea();f.add(ta);mb=new MenuBar();f.setMenuBar(mb);mi=ne
13、w MenuItemstrme.length;me=new Menustrme.length;for(int i=0;istrme.length;i+)mei=new Menu(strmei);mb.add(mei);mii=new MenuItemstrmii.length;for(int j=0;jstrmii.length;j+)miij=new MenuItem(strmiij);mei.add(miij);miij.addActionListener(this);f.addWindowListener(new WindowAdapter()public void windowClos
14、ing(WindowEvent e)System.exit(0););f.setSize(400,300);f.show();diaFind=new Dialog(f,查找,true);diaFind.setLayout(new FlowLayout();diaFind.setSize(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
15、(l1);diaFind.add(t1);diaFind.add(l2);diaFind.add(t2);diaFind.add(b1);diaFind.add(b2);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(新建)fi
16、leDir=;fileName=;ta.setText();f.setTitle(我的记事本);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+我的记事本);if(cmd.eq
17、uals(保存)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+我的记事本);if(cmd.equals(退出)System.exit(0);if(cmd.equals(剪切)int x,y;x=ta.getSelectionStart();y=ta.getSelectionEnd();temp=ta.g
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年度顶管施工项目风险评估与控制合同
- 早教教务主管工作总结
- 二零二五年度金融品牌授权合作协议
- 二零二五年度旧车二手车市场合作协议
- 二零二五年度解聘劳动合同补偿标准及员工退休福利合同
- 二零二五年度带车司机劳务合同与车辆智能监控系统协议
- 2025年度高新技术企业单位试用期劳动合同
- 二零二五年度美容店客户资源及经营权益转让合同
- 2025年度铺面出租与商业品牌提升合同
- 人工智能与趋势分析的结合
- 2025年上半年中电科太力通信科技限公司招聘易考易错模拟试题(共500题)试卷后附参考答案
- 2025年沙洲职业工学院高职单招语文2018-2024历年参考题库频考点含答案解析
- 【化学】常见的盐(第1课时)-2024-2025学年九年级化学下册(人教版2024)
- 2024甘肃省公务员(省考)行测真题
- 体育活动策划与组织课件
- JJG 1204-2025电子计价秤检定规程(试行)
- 咨询公司顾问聘用协议书
- 认养一头牛-双寡格局下新品牌如何实现弯道超车
- 2024年德州职业技术学院单招职业适应性测试题库
- 业务约定书第10号:企业清产核资专项审计业务约定书
- 压缩空气气体管道吹扫、试压方案
评论
0/150
提交评论