欢迎来到课桌文档! | 帮助中心 课桌文档-建筑工程资料库
课桌文档
全部分类
  • 党建之窗>
  • 感悟体会>
  • 百家争鸣>
  • 教育整顿>
  • 文笔提升>
  • 热门分类>
  • 计划总结>
  • 致辞演讲>
  • 在线阅读>
  • ImageVerifierCode 换一换
    首页 课桌文档 > 资源分类 > DOCX文档下载  

    用Java程序编写一个记事本程序的设计报告.docx

    • 资源ID:823043       资源大小:170.88KB        全文页数:25页
    • 资源格式: DOCX        下载积分:5金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要5金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    用Java程序编写一个记事本程序的设计报告.docx

    用Java程序编写一个记事本程序的设计报告学习中心(点):泾阳学习中心专业:计算机科学与技术层次:专升本姓名:李永固批次:112目录一、设计分析1二、程序结构1三、各模块的功能及程序说明21、类设计22、主要功能代码实现4四、源程序9五、操作方法20六、试验结果20七、设计体会22用Java程序编写一个记事本程序的设计报告一、设计要求1.用图形用户界面实现。2.能实现编辑、保存、另存为、查找替换等功能。二、程序结构流程图:图1基本流程图本JaVa文本编辑器功能设计如下:基本功能图2基本功能图各模块的功能及程序说明U类设计(1)类MiniTeXt,包括initTextPane方法初始化面板,initMenu()方法初始化菜单,InitAboutDiaIogO方法初始化关于对话框,initToolBar()方法初始化工具栏,MitRightKeyO方法初始化右键设置,等方法。类成员如下:,三厚天言萌二:file:Filecolor:ColorgetFont:GraphiCsEnviroiunentAfonts:Fonttext:JTextPanefilechooser:JFileChoosercolorchooser:JCoIorChoOSerabout:JlHaIogmenubar:JMenuBariiprt:Printerjobdate:GregoriaikCalendrt:Stringtime:JLabeldatetime:runtimeO1.-otoolbar:JToolBarfIlepopup:JPoPUPMenUUUndo:JMenuItemOQ0ccut:JMenuItemccopy.JMenultemPPaSte:JMenUItemi,-三Oddelete:JMenUltem».I"*Ae必ASselectallJMexHlIteminitRightKeyOrMiniTextOinitTextPaneOmenus:JMenuIBenuitems:JMenuIteminitMenuOaction:ActioxiListenerSaVeFiieOopenFileOinitAboutDialogbuttons:JButtoninitToolBarO(2)类LOading(实现登陆)类成员如下:W导入声明(UuThread:Threadprogress.JProgressBar.cLoading。0startO求人runO(3)类runtime(实现时间同步)类成员如下:O导入声明datetime:ThreadCruntime0CArun()(4)类MainFUnCtiOn(包含主函数)类成员如下:/三i三HjQSmain(Strng)2、主要功能代码实现(1)登陆界面:classLoadingextendsJWindowimplementsRunnableThreaddluThread=null;privateJProgressBarprogress;publicLoadingOSetCUrSor(CUrSor.getPredefinedCurs0r(Cursor.WAIT-CURSOR);/设置光标为等待状态JPaneIdlu=newJPaneKnewBorderLayoutO);URLurl=getClass().getResource(,VimagesZloadingjpg");if(url!=null)dl.add(newJButton(newImageIcon(Url),BorderLayout-CENTER);progress=newJProgressBar(1,100);progress.SetStringPainted(Irue);progress.setBorderPainted(true);progress.setBackground(Color.white);progress.setForeground(Color.green);dlu.add(progress,BorderLayout.SOUTH);setContentPane(dlu);设置窗口属性为登陆面板属性Dimensionscreen=getToolkit().getScreenSize();pack();"显示登陆界面setLocation(screen.width4,screen.height/4);设置登陆界面始终在屏幕中间显示publicvoidstart()Hthis.toFront();dluThread=newThread(Ihis);dluThread.start();publicvoidrun()show。;tryfor(inti=0ji<100ji+÷)Thread,sleep(100);progress.setValue(progress.getValue()+1);progress.setString(,'欢迎进入迷你编辑,请稍后,+i+%,);catch(Exceptionex)ex.printStackTrace();dispose。;/关闭登陆界面(2)时间标签:classruntimeextendsJButtonimplementsRunnableThreaddatetime=null;publicruntime()publicvoidrun()for(;)/java.utiLDatetineer=newjava.util.Date();Calendarnow=Calendar.getlnstance();intyearl=now.get(Calendar.YEAR);intOionthl=IiOWaget(CalendarAlONTH);intdayl=now.get(Calendar.DAY_OF_MONTH);inthourl=now.get(Calendar.HOUR);intminute1=now.get(CalendarAlINUTE);intsec=now.get(CalendanSECOND);setText(yearl÷,*年“+nwnthl+"月”+dayl+“日''+hourl+'!'+minutel+'T'+sec);/Systeni.out.println(now.get(Calendar.DAY_OF_MONTH)-60);UyThread.currentThread().sleep(1000);catch(InterruptedExceptione)(3)右键的实现:voidinitRightKey()filepopup=new.PopupMenu();IlIIiId=IIeWJMeIlIIItem(”撤消(U)");uundo.setMnemonic(*U*);CCilt=IWWJMeIlUltem("剪切(T)");ccuLsetMnemonic(,T,);CCOPy=newJMenuItemr复制(C)”);ccopy.setMnenonic(,C1);ppaste=newJMenIlItem("粘贴(V)");ppaste.setMnemonic(,V,);ddelete=newJMenuItemC'删除(D)");ddeletesetMnemonic('D');SSeIectall=DewJMeIlUltem(”全选(八)");sselectall.setMnemonic('A1);filepopup.add(uundo);11lepopup.addSeparator();lepopup.add(ccut);filepopup.add(ccopy);filepopup.add(ppaste);filepopup.add(ddelete);lepopup.addSeparator();filepopup.add(sselectall);uundoaddActionListener(action);ccuLaddActionListener(action);CCOPy.addActionListener(action);ppaste.addActionListener(action);ddelete.addActionListener(action);sselectall.addActionListener(action);text.addMouseListener(newMouseAdapter()publicvoidnousePressed(MouseEventevent)checkForTriggerEvent(event);publicvoidHiouseReleasedfMouseEventevent)=WORD完整版.一可编辑-专业资料分享=checkForTrgerEvent(event);publicvoidCheckForTrigerEvent(MouseEventevent)if(event.isPopupTrigger()filepopup.show(event.getComponent(),event.getX(),event.getY(););(4)打开、保存、复制、粘贴、撤销等功能事件响应实现:/事件处理ActionListeneraction=newActionListenerOpublicvoidactionPerforned(ActionEvente)JMenuItenimi=(JMenuIten)egetSource();Stringid=mi.getText();if(idequals("新建”)Datedate=newDate();text.setText(date.toString();file=null;elseif(id.equals(”打开”)if(file!=null)f0echoosersetSelectedFile(file);为用户选择文件提供了一种简单的机制intreturnVal=(IIeChOOSer.ShowOpenDialog(MiniTexLthis);if(returnVal=JFileChoosenAPPROVE.OPTION)file=filechooser.getSelectedFile();OPenFile0;elseif(idequals(”保存”)if(file!=null)filechooser.setSelectedFile(file);intreturnVal=flechoosenshowSaveDialog(MiniText.this);if(returnVal=JFileChoosenAPPROVE.OPTION)file=fllechooser.getSelectedFile();saveFile();JOPtiOnPane.ShOWNleSSageDialog(nullJ己保存'');一一完整版学习资料分享一=WORD完整版一-可编辑-专业资料分享=elseif(id.equals("另存为")if(file!=null)filechooser.setSelectedFile(file);intreturnVal=filechooser.showSaveDialog(MiniText.this);if(returnVal=JFileChoOSer.APPROVE一OPTloN)file=flechooser.etSelectedFile();saveFile();JoPtionPane.showMessageDialog(nuIl,"已保存");)elseif<id.equals("打印'')prt.printDialog();elseif<id.equals("打印页面设置”)(tryprt.print();catch(Exceptionew)JOptionPane.showMessageDialog(null,'f打印出错!”,”错误'JOptionPane.ERROR-MESSAGE);elseif(idequals退出'')System.exit(O);elseif(idequals(''剪切'')id.equak(''剪切(T)")textcut();elseif(id.equals复制")id.equals<”复制(C)")text.copy();elseif(idequals(”粘贴")id.equals<"粘贴(V)")text.paste();elseif(idequals(”删除")id.equals("删除(D)")text,replaceSeleCtiOn(''”);elseif(idequals(”选择全部")id.equals(”全选(八)")text.selectAll();elseif(idequals字体颜色)color=JCOIOrChOOsershowDialug(MiniText.thisJ字体颜色设置",color);text.setForegr()und(color);elseif(idequals(”自动换行”)>elseif(id.equals(”撤销")id.equals(”撤消(U)")textsetText(''");IexLselectAllO;elseif(i<LeqUaISr查找”)Stringfind="查找”;find=JOptionPaiie.showInputDialog(”查找:”);elseif(idequals(”时间”)time.setFont(newFont(,TimesNewROman'FontPLAIN,12);texLinsertComponent(tie);elseif(idequals(”系统记事本'')tryStringcommand=''notepad.exe”;Processchild=RUntimegetRuntime()*xec(command);/从系统进程中调用记事本一一完整版学习资料分享一=WORD完整版一可编辑.专业资料分享=catch(IOExceptionex)elseif(id*quals(”系统计算器”)tryStringcommand="calc.exe”;Processchild=Runtime.getRuntime().exec(command)iBfflEiM5catch(IOExceptionex)elseif(id.equals(”关于")about.setSize(250,150);about.show(););四、源程序importjava.awt.*;importjava.awt.event.*;importjavax.swing.*;importjava.io.*;publicclassNotepadextendsJFrame/系统组件声明privateJMenuBarmenBar=newJMenuBar();privateJEditorPanecontent=newJEditorPaneO;privateJScrolIPanescroll=newJScrollPane(content);privateJFileChooserfilechser=newJFileChooserO;privateBorderLayoutbord=newBorderLayout();privateJLabelStatusBar=newJLabel();privateJPanelpane=newJPanel();privateFilefile=null;/定义文件菜单privateJMenufileMenu=newJMenu();privateJMenuItemnewMenuItem=newJMenultem();privateJMenuItemOpenMenuItem=newJMenuItemO;privateJMenuItemSaveMenuItem=newJMenultemO;privateJMenuItemSaveAsMenuItem=newJMenuItem();privateJMenuItempageSetupMenultem=newJMenuItem();privateJMenuItemprintMenultem=newJMenuItem();privateJMenuItemexitMenuItem=newJMenuItem();/定义风格菜单privateJMenuStyleMenu=newJMenu();privateButtonGroupStyleMenuGroup=newButtonGroupO;privateJRadioButtonMenuItemjavaStyleMenuItem=newJRadioButtonMenuItemO;privateJRadioButtonMenuItemmetalStyleMenuItem=newJRadioButtonMenuItemO;privateJRadioButtonMenuItemWindowsStyIeMenultem=newJRadioButtonMenuItemO;-完整版学习资料分享一-/定义帮助菜单privateJMenuItemaboutMenuItem=newJMenuItem();privateJMenuItemHelpTopicMenuItem=newJMenuItem();privateJMenuhelpMenu=newJMenu();/构造函数publicNotepadOinitComponents();privatevoidinitComponents()Ctrl+N");Ctrl+On);Ctrl+St,);/添加子菜单项到文件菜单fileMeu.setText("u6587u4ef6(F)");newMenuItem.setText(n新建(N)OpenMenultem.setText("打开(O)SaveMenuItem.setText("保存(三)saveAsMenuItem.setText(,'另存为(八).");pageSetupMenuItem.setText(M页面设置(U).");PrintMenuItem.setText(n打印(P).Ctrl+P);exitMenuItem.setText("退出”);HleMenu.add(newMenuItem);HleMeniLadd(OpenMenuItem);HleMenu.Hdd(SaveMenuItem);HleMeniLadd(SaveAsMenultem);HleMeniLaddSepciratorO;fileMenu.add(pageSetupMenuItem);HleMenu.add(printMenuItem);HleMeniLaddSepciratorO;HleMenu.add(exitMenuItem);/添加子菜单项到风格菜单StyIeMenU.setText("风格(三)");javaStyleMenuItem.setText(,'Java默认”);metcilStyleMenuItem.setText("Metal风格”);windowsStyleMenuItem.setText(Windows风格”);styleMenuGroup.add(javaStyleMenuItem);styleMenuGroup.add(metalStyleMenultem);styleMenuGroup.add(windowsStyleMenuItem);StyleMenu.UddQjavaStyleMenultem);StyleMenu.add(metalStyIeMenuItem);StyleMeniLadd(WindowsStyleMeniiltem);/添加子菜单项到帮助菜单helpMenu.setText("帮助(三)");=WORD完整版-可编辑.专业资料分享=KelpTopicMenuItem.setText("帮助主题(三)");aboutMenuItem.setText(,1关于记事本(八)");helpMenu.add(helpTopicMenuItem);heIpMenu.addSeparator();helpMenu.add(aboutMenuItem);/定义文件菜单下的事件监听newMenuItem.addActionListener(newnewMenuItem_actionAdapter(this);openMenultem.addActionListener(newopenMenuItem-actionAdapter(this);SaveMenuItem.addActionListener(newsaveMenuItem-actionAdapter(this);SaveAsMenuItem.addActionListener(newsaveAsMenuItem-actionAdapter(this);PageSetupMenuItem.addActionListener(newpageSetupMenuItem-actionAdapter(this);printMenuItem.addActionListenertnewprintMenuItem_actionAdapter(this);exitMenuItem.addActionListener(newexitMenuItem-actionAdapter(this);"定义风格菜单下的事件监听javaStyleMenuItem.addActionListener(newjavaStyleMenuItem_actionAdapter(Ihis);metalStyleMenuItem.addActionListenerfnewmetalStyleMenuItem-actionAdapter(this);WindowsStyleMenuItem.addActionListener(newwindowsStyleMenuItem-actionAdapter(this);/定义帮助菜单下的事件监听HelpTopicMenuItem.addActionListener(newhelplbpicMenuItem-actionAdapter(this);aboutMenuItem.addActionListenerInewaboutMenuItem-actionAdapter(this);/填加菜单到菜单栏menBar.add(fileMenu);menBar.add(styleMenu);menBar.add(helpMenu);/对主窗口的一些设置this.setDefaullCloseOperation(EXIT_ON_CLOSE);thissetTitle("无标题u8bbu4e8bu672c");this.setSize(640,480);setJMenuBar(menuBar);pane.setLayout(bord);Pane.add("Center”,scroll);setContentPane(pane);/定义新建菜单项方法publicvoidnewMenuItemActionPerformed(ActionEventevt)file二null;if(!(,"'.equals(content.getText()Objectoptions=',是(Y)”,”否(N)”,”取消”;ints=JOptionPane.showOptionDialog(null,"u6587u4ef6,+getTitle()÷"u7684u6587u5b57u5df2u7ecu6539u53d8u3002nu60f3u4fddu5b58u6587u4ef6u5417ufflf,一-完整版学习资料分享一-=WORD完整版-可编辑.专业资料分享="u8bbu4e8bu672c",JOPtiOnPane.DEFAULTOPTION,JOptiOnPane.WARNING-MESSAGE,null,options,options0);switch(s)caseO:intreturnVal=filechooser.showSaveDialog(this);if(returnVal=JFileChooser.APPROVE_OPTION)file=filechooser.getSelectedFile();trylFiIeWriterfw=newFileWriter(fle);fw.write(content.getText();setTitleffilechooser.getSelectedFileO.getNameO+'1-u8bbu4e8bu672c'1);fw.close();catch(Exceptione)e.printStackTrace();break:case1:content.setText(");SetTitle(”无标题-u8bbu4e8bu672c");/定义打开菜单I®方法publicvoidopenMenuItemActionPerformed(ActionEventevt)tryfile=null;intreturnVal=HlechooseLshowOpenDialog(Ihis);if(returnVal=JFileChooser.APPROVE.OPTION)file=HlechooseLgetSelectedFileO;FileReaderfr=newFileReader(file);intIen=(int)fle.length();charbuffer=newcharlen;fr.read(buffer,O,len);fr.close();content.setText(newString(buffer);catch(Exceptione)e.printStackTrace();定义退出菜单项方法publicvoidexitMenuItem_actionPerfbrmed(ActionEvente)if(!("".equals(content.getText()Objectoptions=',是(Y)否(N)Y取消”;ints=JOptionPane.showOptionDialog(nuli,"文件的文字已经改变。n想保存文件吗?"u8bbu4e8bu672c",JoPtionPane.DEFAULTOPTIoN,JOptiOnPane.WARNING-MESSAGE,null,options,options0);switch(s)case0:intreturnVal=filechooser.showSaveDialog(this);if(returnVal=JFileChooser.APPROVE_OPTION)File=AlechoosengetSelectedFileO;trylFileWriterfw=newFileWriter(file);fw.write(content.getText();setTitleffilechooser.getSelectedFileO.getNameO+'1-u8bbu4e8bu672c,1);fw.close();catch(Exceptionex)ex.printStackTrace();break;case1:System.exit(O);JelseSystem.exit(O);/保存事件publicvoidsaveMenuItemActionPerformed(ActionEventevt)intreturnVal=filechooser.showSaveDialog(this);if(returnVal=JFikChooSer.APPROVE一OPTIoN)file=flechooser.getSelectedFile();tryFileWriterfw=newFileWriter(file);fw.write(content.getText();setTitle(filechoose.getSelectedFile().getName()+-u8bbu4e8bu672c);fw.close();catch(Exceptione)=WORD完整版-可编辑.专业资料分享=e.printStackTrace();/另存为事件publicvoidsaveAsMenuItemActionPerfbrmed(ActionEventevt)filechooser.setDialogTitle("另存为.");intreturnVal=filechooser.showSaveDialog(this);if(returnVal=JFileChooser.APPROVE_OPTION)File=RlechoosengetSelectedFileO;trylFileWriterfw=newFileWriter(fle);fw.write(content.getText();setTitledHechooser.getSelectedFileO.getNameO+'1-u8bbu4e8bu672cn);fw.close();catch(Exceptione)e.printStackTrace();I/页面设置事件publicvoidpageSetupMenuhemActionPerfbrmed(ActionEvenlevt)JOPtionPane.showMessageDialog(null,”此功能正在开发中.");/打印事件publicvoidprintMenultemActionPerformed(ActionEventevt)JOptionPane.showMessageDialog(null,fTE|Jql=,.M);更新风格外观方法voidchangeLookFeel(StringcIassName)tryUlManageLsetLookAndFeel(ClassName);catch(Exceptione)System.out.println(e);SwingUtilities.updateComponentTreeUI(this);"Java风格事件publicvoidjavaStyleMenuItemActionPerfbrmed(ActionEventevt)changeLookFeel(,javax.swing.pIaf.metal.MetalLookAndFeel");I/Motif风格事件publicvoidmetalStyleMenuItemActionPerformed(ActionEventevt)changeLookFeel(',com.sun.java.swing.PlaEmotifMotifLookAndFeel");/MAC风格事件publicvoidwindowsStyleMenuItemActionPerfbrmed(ActionEventevt)changeLookFeel(,com.sun.java.swing.plaf.windows.WindowsLookAndFee,);/帮助事件publicvoidhelpTopicMenuItemActionPerformed(ActionEventevt)JOptionPane.showMessageDialog(null'u9700u8981u5e2eu52a9u5417ufflf,);/关于事件publicvoidaboutMenuItemActionPerformed(ActionEventevt)JOptionPane.showMessageDialog(null,"nu7a0bu5e8fu540du79ft)uffIaJavau8bb0u4e8bu672cnu4ee3u7801u7fl6u5199ufflaCaviennu4f5cu8005u7f51u7ad9ufflahttp:/nE-mailu3000ufflaCavien,');/主函数publicstaticvoidmain(Stringargs)Notepadnotepad=newNotepadO;notepad.setVisible(true);/定义新建事件类classnewMenuItem_actionAdapt

    注意事项

    本文(用Java程序编写一个记事本程序的设计报告.docx)为本站会员(夺命阿水)主动上传,课桌文档仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知课桌文档(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-1

    经营许可证:宁B2-20210002

    宁公网安备 64010402000986号

    课桌文档
    收起
    展开