




已阅读5页,还剩34页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第九章happichart用户聊天程序,学习目的和要求:对聊天程序的分析和设计有深刻的理解。使用JMenuBar、JMenu和JMenuItem配置应用程序菜单使用JPopupMenu配置应用程序弹出菜单JList或List,使用JTextArea配置应用程序界面使用JToolBar配置应用程序工具栏使用JTable改进输入和输出界面,9.1HappyChat聊天程序分析9 表9.1HappyChat聊天界面组件,程序逻辑分析happytchat聊天程序主要包括5个功能:聊天:基本上,用户输入的聊天信息将发送给聊天室中的每个人; 如果用户选择了聊天对象并选中了“个人聊天”复选框,则可以向指定用户发送用于个人聊天的聊天信息。在这种情况下,发送的聊天信息不会显示给指定用户以外的其他用户。聊天历史记录:用户可以在聊天时单击“保存”按钮,将当前聊天信息保存到文件中,以后可以通过“查看聊天历史记录”查看过去的聊天信息。整理屏幕:用户在聊天时,可以单击“整理屏幕”按钮清除当前屏幕上显示的聊天信息。时钟:用户聊天时可以单击“时钟”按钮,聊天系统将以时钟格式显示当前时间。发送附件:用户可以单击浏览按钮选择附件,或直接输入附件路径和文件名,然后单击发送按钮将选定附件发送给指定用户;使用9.2菜单、JMenuBar类、表9.2JMenuBar常用方法、JMenu类菜单的实现是弹出窗口,其中包含在用户选择JMenuBar中的项目时显示的JMenuItem。除JMenuItem外,JMenu还可以包含JSeparator。菜单本质上是与JPopupMenu相关联的按钮。按“按钮”显示JPopupMenu。如果按钮位于JMenuBar中,则此菜单为顶级窗口。如果“按钮”是其他菜单项,则JPopupMenu为“右池”菜单。JMenu的配置方法和一般方法包括:表9.3中所示,表9.3JMenu配置方法和一般方法,JMenuItem类,表9.4JMenuItem配置方法和一般方法,菜单应用程序实例示例9-1下拉菜单应用/菜单应用程序imporationimport Java . awt . *;import Java . awt . event . *;publicclassmendemoextendsjframe implementsactionlistener jmenumbarmbmain;JMenumnuSystem,mnuHelpJmenitemmnuicls、mnuisave、mnu iclock、mnuiexit、mnuicontent、mnu iindex、mnuiaboutPublicmenumdemo () super(“应用菜单演示”);setdefaultcloseoperation(j frame . exit _ on _ close);fontfntisp 1=newfont(“歌曲”,Font .PLAIN,12);MB main=newJMenuBar();MnuSystem=newJMenu(“系统(s)”);MnuHelp=newJMenu(“帮助(h)”);mnu system . setm nemonic(S);mnu help . setm nemonic(key event . vk _ h);MB main . add(mnu system);MB main . add(mnu help);MnuiCls=newJMenuItem(“清除屏幕显示”);MnuiSave=newJMenuItem(“保存聊天记录”);MnuiClock=newJMenuItem(“查看时间”);MnuiExit=newJMenuItem(“系统关闭”);mnuiexit . addaction listener(this);mnu system . add(mnu icls);mnu system . add(mnu isave);mnu system . add(mnu iclock);mnusystem . add(mnuiExit);mnusystem . setfont(fnt disp 1);mnu help . setfont(fnt disp 1);mnu icls . set font(fnt disp 1);mnuisave . setfont(fnt disp 1);mnuiclock . set font(fnt disp 1);mnuiexit . setfont(fnt disp 1);iconicontent=new image icon( help . gif );MnuiContent=newJMenuItem(“目录”,ICN content);MnuiIndex=newJMenuItem(“索引”);MnuiAbout=newJMenuItem(HappyChat聊天系统信息. );mnuia bout . addaction listener(this);mnui content . set font(fnt disp 1);mnu index . setfont(fnt disp 1);mnuiabout . setfont(fnt disp 1);mnu help . add(mnui content);mnu help . add(mnu index);mnu help . add(mnuiAbout);SetJMenuBar(MB main);SetSize(250,150);set visible(true); publicvoictionperformed(action event AE), joption pane . show messagedialog(null, : AE . getaction componedialog);if(AE . get source()=mnuiexit)system . exit(0); public stic void main(string args) new menu VO();,JPopupMenu类示例9-2弹出菜单应用程序/弹出菜单应用程序演示import Java . awt . *;import Java . awt . event . *;importjavax . swing . *;publicclaspupmendemoextendsjframe implement saction listener jpop up menu pop min;JMenuItemmnuiOpen、mnuiSaveJtfareattestJPanelpnlMainpublicpopupmenudo() pnlmain=new jp anel();SetContentPane(pnlMain);pop min=new jpop up menu();MnuiOpen=newJMenuItem(“打开文件”);mnu iopen . addaction listener(this);pop main . add(mnui open);MnuiSave=newJMenuItem(“保存文件”);mnuisave . addaction listener(this);pop main . add(mnuiSave);Ta test=new jttextarea (6,20);击球测试。append(按滑鼠右键快显功能表);tatest . addmouselistener(newpopuplist();pnlmain . add(taTest);SetTitle(“弹出菜单演示”);SetSize(250,150);set visible(true); classpopuplistnerextendsmouseadapter publicvoidmousepressed(mouse evename) if(me . get button()=mouse evename); public stic void main(string args) newpopupmenu();、9.3 jtfoolbar类、概述工具栏是快捷功能,通过单击工具栏上的按钮提供快捷方式功能,Java通过jtfoolbar类提供此功能,表9.6JToolBar的配置方法和常规方法,jtfoolbar应用程序实例示例9-3/工具栏应用程序演示/相关程序包简介。URLpublicclasstoolbardemoextendsjframe implementsationlistener /菜单变量声明publicToolBarDemo()super(“应用工具栏演示”);/配置菜单JToolBartb=newj toolbar();JButtonbtnNew=nullBtnNew=makeButton(new , New , new , new , NEW file , NEW , NEW );TB . add(btnNew);JButtonbtnOpen=null,BTN open=make button(“open”,“open”,“open”,“打开文件”,“打开”);TB . add(btnOpen);JButtonbtnSave=nullBTN save=make button(“save”,“save”,“save”,“保存一个文件”,“保存”);TB . add(BTN save);jpanelpnlman=new jp anel(new border layout();SetContentPane(pnlMain);Pnlmain.add (TB,border layout . page _ start);SetSize(250,150);set visible(true); publicvoictionperformed(action event AE) joption pane . show messagedialog(null,“:”AE . getaction commanagedialog);if(AE . get source()=mnuiexit)system . exit(0); jbuttonmakebutton(string strimage,strings traction,stringtxttoltip,string stralter) stringimglocation=“gif”;urlur limage=toolbar demo . class . get resource(imglocation);JButtonbtnTemp=new jbutton();BTN temp . setaction command(straction);BTN temp . settooltiptext(txt tooltip);btntemp . addactionlistener(this);If(urlImage!=null)/BTN找到temp.seticon (URL image)图像。没有Else/btnTemp.setText(strAlter)图像。ReturnbtnTemp public stic void main(string args) newtoolbar demo();、使用9.4多行文本框、jtfarearea类JTextArea类和TextArea类都表示可编辑多行文本的文本组件,其中TextArea是AWT组件,jtfarearea是Swing组件。jttextarea是表9.7JTextArea和TextArea之间的区别,JScrollPane类示例9-4使用JtTextArea和js croll pane/JTextArea和TextArea和JScrollPaneimportjavax . swing . *;import Java . awt . event . *;publicclasstextareademoextendsjframe implementsactionlistener textareatleft;Jt2tarightJScrollPanejspRightJButtonbtnInsert,btnReplaceJTextFieldtxtContextJPanelpnlMainpublictextarademo() BTN insert=new jbutton(“插入”);btnninsert . addactionlistener(this);BtnReplace=newJButton(“替换”);BTN replace . addaction listener(this);txt context=new jtfield(10);TaLeft=newTextArea(7,12);TaLeft.setText(这是TextArea );taleft . append(“ n常规方法演示!”);taleft . setselectionstart(2);taleft . setselectionend(12);Jta right=new JTextArea(这是jtfatarea水和垂直滚动条,6,12)。JSP right=new js croll pane(JTA right);P
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 咖啡文化展览创新创业项目商业计划书
- 咖啡沐浴露创新创业项目商业计划书
- 冲压复合模具设计
- 护理诊断解读
- 标志设计项目式教程课件 项目五 标志制作流程
- 盆景养桩基础知识培训课件
- 工厂内电器火灾知识培训课件
- 近视治疗手术护理
- 圆柱体积教学课件
- 工厂产品标准知识培训课件
- 海思芯片HTOL老化测试技术规范
- 最新版个人征信报告(可编辑+带水印)
- 国际贸易实务英文版第五版ppt课件(完整版)
- 排尿评估及异常护理
- 隧道穿越大型活动断裂带的技术对策
- 宏业清单计价软件入门必备
- 人教版七年级初一数学:期中考试初一数学试卷及答案
- 部编版三年级上册教材解读及教学建议课件
- 如何让你的标书评审专家青睐
- 人工智能中的搜索问题36
- GB∕T 5273-2016 高压电器端子尺寸标准化(高清版)
评论
0/150
提交评论