版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
《Java程序设计》课程实验目 录目 录 1一、引言 21.1 课程设计目的 21.2 实验内容 21.3 开发工具介绍 2二、总体设计 错误!未定义书签。2.1系统开发平台 错误!未定义书签。2.2 系统流程图 42.3功能结构图 错误!未定义书签。三、详细说明 43.1 系统实施 错误!未定义书签。四、系统的调试和运行 9五、课程设计总结 9六、参考文献 9附录(源程序代码) 101《Java程序设计》课程实验一、 引言1.1实验目的掌握图形用户界面程序的界面设计。掌握布局管理器的使用。掌握事件处理的原理。1.2实验内容设计一个图形界面(GUI)的记事本应用程序。(1)提供菜单选择功能,菜单项设计如下图所示。(2)利用文件选择对话框选择要编辑的文件,编辑完成后进行保存。3)提高(选做):在基本功能基础上增加文字格式的设置功能。4)提高(选做):为菜单项设计工具栏。1.3开发工具介绍2《Java程序设计》课程实验Eclipse 是一种可扩展的开放源代码 IDE。2001年11月,IBM公司捐出价值 4,000万美元的源代码组建了 Eclipse 联盟,并由该联盟负责这种工具的后续开发。 集成开发环境(IDE)经常将其应用范围限定在“开发、构建和调试”的周期之中。为了帮助集成开发环境 (IDE)克服目前的局限性,业界厂商合作创建了Eclipse平台。Eclipse允许在同一IDE中集成来自不同供应商的工具,并实现了工具之间的互操作性,从而显著改变了项目工作流程,使开发者可以专注在实际的嵌入式目标上。利用Eclipse,我们可以将高级设计 (也许是采用 UML)与低级开发工具 (如应用调试器等 )结合在一起。如果这些互相补充的独立工具采用 Eclipse 扩展点彼此连接,那么当我们用调试器逐一检查应用时, UML对话框可以突出显示我们正在关注的器件。 事实上,由于Eclipse并不了解开发语言,所以无论 Java语言调试器、 C/C++调试器还是汇编调试器都是有效的,并可以在相同的框架内同时瞄准不同的进程或节点。Eclipse 的最大特点是它能接受由 Java开发者自己编写的开放源代码插件,这类似微软公司的 VisualStudio 和Sun微系统公司的 NetBeans平台。Eclipse 为工具开发商提供了更好的灵活性,使他们能更好地控制自己的软件技术。 Eclipse 联盟已经宣布将在 2004年中期发布其 3.0版软件。这是一款非常受欢迎的 java开发工具,这国内的用户越来越多,实际上实用它 java开发人员是最多的。 缺点就是较复杂, 对初学者来说,理解起来较困难。二、总体设计2.1系统开发平台Java(ORACLE)版本32.2系统流程图打开文件file=openfilesaving
《Java程序设计》课程实验启动程序输入文字保退字关存体文颜件出色于about.show()colorSystem.exit(关闭或退出程序4《Java程序设计》课程实验2.3功能结构图开始“文件”菜单打保开存文文件件用 JFileChooser() 用 sava()保存选择所打开文件路径 文件用unfold() 读取所选的文件内容到记事本
退出用close()关闭文件三、详细说明3.1系统实施设计两个类,一个mynotepad类,再创建一个Notebad类,然后进行代码输入,就可以直接在编译器中运行程序。1:界面设计在主界面中设计一个 Frame容器,并在其中加入一个下拉菜单和一个文本域控件。功能设计在下拉菜单中加入子菜单,分别实现对文件的操作功能。点击不同菜单项时,显示不同界面。:代码设计编写每个控件的相关代码,并进行调试。5《Java程序设计》课程实验四、系统的调试和运行五、设计总结六、参考文献附录(源程序代码)classmynotepadextendsJFrame{Filefile=null;Colorcolor=Color.red;mynotepad(){initTextContent();initMenu();initAboutDialog();}voidinitTextContent(){getContentPane().add(newJScrollPane(content));6《Java程序设计》课程实验}JTextPanecontent=newJTextPane();JFileChooseropenfile=newJFileChooser();JColorChooseropencolor=newJColorChooser();JDialogabout=newJDialog(this);JMenuBarmenu=newJMenuBar();JMenu[]menus=newJMenu[]{newJMenu("文件"),newJMenu("编辑"),newJMenu("关于")};JMenuItemoptionofmenu[][]=newJMenuItem[][]{{newJMenuItem("新建"),newJMenuItem("打开"),newJMenuItem("保存"),newJMenuItem("退出")},{newJMenuItem("复制"),newJMenuItem("剪切"),newJMenuItem("粘贴"),newJMenuItem("颜色")},{newJMenuItem("关于")}};7《Java程序设计》课程实验voidinitMenu(){for(inti=0;i<menus.length;i++){menu.add(menus[i]);for(intj=0;j<optionofmenu[i].length;j++){menus[i].add(optionofmenu[i][j]);optionofmenu[i][j].addActionListener(action);}}this.setJMenuBar(menu);}ActionListeneraction=newActionListener(){publicvoidactionPerformed(ActionEvente){Stringname=e.getActionCommand();JMenuItemMI=(JMenuItem)e.getSource();if("新建".equals(name)){content.setText("");file=null;}elseif("打开".equals(name)){if(file!=null)openfile.setSelectedFile(file);intreturnVal=openfile.showOpenDialog(mynotepad.this);if(returnVal==JFileChooser.APPROVE_OPTION){file=openfile.getSelectedFile();unfold();}}elseif("保存".equals(name)){if(file!=null)openfile.setSelectedFile(file);intreturnVal=openfile.showSaveDialog(mynotepad.this);if(returnVal==JFileChooser.APPROVE_OPTION){8《Java程序设计》课程实验file=openfile.getSelectedFile();saving();}}elseif("退出".equals(name)){mynotepadf=newmynotepad();ints=JOptionPane.showConfirmDialog(f,"退出?","退出",JOptionPane.YES_NO_OPTION);if(s==JOptionPane.YES_OPTION)System.exit(0);}elseif("剪切".equals(name)){content.cut();}elseif("复制".equals(name)){content.copy();}elseif("粘贴".equals(name)){content.paste();}elseif("颜色".equals(name)){color=JColorChooser.showDialog(mynotepad.this,"",color);content.setForeground(color);}elseif("关于".equals(name)){about.setSize(300,150);about.show();}}};voidsaving(){9《Java程序设计》课程实验try{FileWriterWritef=newFileWriter(file);Writef.write(content.getText());Writef.close();}catch(Exceptione){e.printStackTrace();}}voidunfold(){try{FileReaderReadf=newFileReader(file);intlen=(int)file.length();char[]buffer=newchar[len];Readf.read(buffer,0,len);Readf.close();content.setText(newString(buffer));}catch(Exceptione){e.printStackTrace();}}voidinitAboutDialog(){about.setLayout(newGridLayout(3,1));about.getContentPane().setBackground(Color.white);about.getContentPane().add(newJLabel("我的记事本程序 "));about.getContentPane().add(newJLabel("制作者:liuhui"));about.getContentPane().add(newJLabel("2010年6月"));about.setModal(true);about.setSize(100,100);about.setLocation(250,170);}10《Java程序设计》课程
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 个体服装店2024年度承包经营合同版
- 2025年度鸡肉制品安全生产与监管合同3篇
- 广东广东海洋大学后勤保障部招聘非编制水电维修工笔试历年参考题库附带答案详解
- 威海2025上半年北京交通大学(威海)教辅管理人员招聘6人笔试历年参考题库附带答案详解
- 台州2025年浙江台州临海市自然资源和规划局招聘编外聘用人员笔试历年参考题库附带答案详解
- 2025年度选煤厂安全生产技术承包合同
- 2025年广西百色市田东县供销合作社联合社社属企业招聘笔试参考题库附带答案详解
- 2025至2031年中国无尘袋行业投资前景及策略咨询研究报告
- 中央2025年中国新闻社招聘应届生笔试历年参考题库附带答案详解
- 2025年度销售业务员售后服务与客户关系维护合同2篇
- 企业年会摄影服务合同
- 电商运营管理制度
- 二零二五年度一手房购房协议书(共有产权房购房协议)3篇
- 2025年上半年上半年重庆三峡融资担保集团股份限公司招聘6人易考易错模拟试题(共500题)试卷后附参考答案
- 城市公共交通运营协议
- 内燃副司机晋升司机理论知识考试题及答案
- 2024北京东城初二(上)期末语文试卷及答案
- 2024设计院与职工劳动合同书样本
- 2024年贵州公务员考试申论试题(B卷)
- 电工高级工练习题库(附参考答案)
- 村里干零工协议书
评论
0/150
提交评论