JAVA语言 第十一章 Swing II

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

ACCPV4.0第十一章SwingIIACCPV4.02回顾Java基础类扩展了抽象窗口工具包(AWT),并包含称作Swing组件的改进用户界面容器对象是能够容纳其他Swing组件的一种组件。容器负责对它包含的组件进行布局。常用的容器有JFrame、JPanel和JScrollPane组件可置于用户界面上,并可使其显示或改变大小。常用的组件有JLabel、JTextField、JTextArea、JButton、JCheckBox、JRadioButton和JComboBox要处理事件,可使用事件处理程序,以执行所需操作标准事件适配器或匿名内部类适配器可用于处理事件布局管理器可在容器中自动定位组件ACCPV4.03本章目标掌握菜单设计运用各种对话框ACCPV4.04菜单2-1显示一个项目列表,指明用户可以执行的各项操作文件编辑格式帮助字体段落项目符号和编号背景色红色绿色黑色菜单子菜单ACCPV4.05菜单2-2包含javax.swing包的菜单类的类层次结构ObjectComponentContainerJComponentJMenuBarJSeparatorAbstractButtonJPopupMenuJMenuJCheckboxMenuItemJRadioButtonMenuItemJMenuItemACCPV4.06JMenuBar类2-1只要选中JMenuItem,就会产生通过重写actionPerformed()方法进行处理的ActionEventJMenuBar文件编辑格式帮助新建打开关闭JMenuJMenuItemACCPV4.07JMenu类2-1JMenu组件有两个用途当它添加至JMenuBar时,将显示为文本字符串当用户单击此菜单项时,则显示一个弹出式菜单JMenuJMenuItemJSeparatorJCheckBoxMenuItemJRadioButtonMenuItemACCPV4.08JMenu类2-2JPopupMenuJMenu类当用户单击JMenu时,显示JMenu的菜单项ACCPV4.09只要将组件拖放至应用程序,就会在该应用程序内创建一个相应的类在应用程序中创建菜单时,各个类的代码将在“Source”选项卡中自动生成JMenuItem类2-1JMenuItem组件通常是JMenu或JPopupMenu中选项的标题在JMenuItem中除了可以添加字符串外,还可添加图标演示:示例1文件新建ACCPV4.010JMenuItem类2-2importjava.awt.Dimension;importjavax.swing.JFrame;importjavax.swing.JPanel;importjavax.swing.JMenuBar;importjavax.swing.JMenu;importjavax.swing.JMenuItem;publicclassMenuFrameextendsJFrame{JPanelcontentPane;JMenuBarmnuNotepad=newJMenuBar();JMenumnuFile=newJMenu();JMenumnuEdit=newJMenu();JMenumnuFormat=newJMenu();JMenuItemmnuNew=newJMenuItem();JMenuItemmnuOpen=newJMenuItem();JMenuItemmnuSave=newJMenuItem();JMenuItemmnuSaveAs=newJMenuItem();JMenuItemmnuExit=newJMenuItem();JMenumnuHelp=newJMenu();publicMenuFrame(){try{setDefaultCloseOperation(EXIT_ON_CLOSE);jbInit();}catch(Exceptionexception){exception.printStackTrace();}}privatevoidjbInit()throwsException{contentPane=(JPanel)getContentPane();contentPane.setLayout(null);this.setJMenuBar(mnuNotepad);setSize(newDimension(400,300));setTitle(“菜单);mnuFile.setText(“文件);mnuEdit.setText(“编辑);mnuFormat.setText(“格式);mnuNew.setText(“新建);mnuOpen.setText(“打开...);mnuSave.setText(“保存);mnuSaveAs.setText(“另存为...);mnuExit.setText(“退出);mnuHelp.setText(“帮助);mnuNotepad.add(mnuFile);mnuNotepad.add(mnuEdit);mnuNotepad.add(mnuFormat);mnuNotepad.add(mnuHelp);mnuFile.add(mnuNew);mnuFile.add(mnuOpen);mnuFile.add(mnuSave);mnuFile.add(mnuSaveAs);mnuFile.add(mnuExit);}}ACCPV4.011JPopupMenu类2-1用于显示展开形式的菜单可显示在屏幕的任何地方通常是由单击鼠标右键触发的激活弹出式菜单项之一所执行的操作总是依赖于上下文可供JPopupMenu类使用的方法ACCPV4.012JPopupMenu类2-2方法说明publicJMenuItemadd(JMenuItemmenuItem)将指定菜单项添加至菜单末尾publicJMenuItemadd(Strings)使用指定文本新建菜单项,并将其添加至菜单末尾publicvoidshow(Componentc,intx,inty)在组件“c”的坐标空间的(x,y)位置显示弹出式菜单publicBooleanisPopupTrigger()确定是否将鼠标事件看作是当前平台的弹出触发器ACCPV4.013JCheckBoxMenuItem类这个类是JMenuItem类的子类使用这个类可实现复选框,默认情况下可为其分配选定标记或取消选定标记文件编辑视图帮助正常幻灯片浏览工具栏标准格式绘图ACCPV4.014JRadioButtonMenuItem类在同一时刻只能选择一个菜单项文件编辑格式帮助字体段落项目符号和编号背景色粗体斜体常规ACCPV4.015对话框6-1Java中的对话框是一个容器,它充当父容器的子容器JOptionPane这个类支持的功能有:布局标准对话框指定对话框的标题和文本提供图标和自定义按钮文本JOptionPane可用于显示各种图标,如用于警告消息、问题、错误和信息等的图标“消息”对话框“错误”对话框“问题”对话框ACCPV4.016对话框6-2以下是一些可供JOptionPane类使用的构造方法:JOptionPane()JOptionPane(Objectmessage)JOptionPane(Objectmessage,intmessageType)JOptionPane(Objectmessage,intmessageType,intoptionType)JOptionPane(Objectmessage,intmessageType,intoptionType,Iconicon)ACCPV4.017对话框6-3JOptionPane类的showXxxDialog方法是显示模式对话框最常用的方法showXxxDialogshowMessageDialog()showOptionDialog()showXxxDialog()方法的一些重载版本ACCPV4.018对话框6-4MethodsDescriptionvoidshowMessageDialog(ComponentparentComponent,Objectmessage)此方法显示一则消息,即标题为“消息”的对话框。voidshowMessageDialog(ComponentparentComponent,Objectmessage,Stringtitle,intmessageType)此方法显示使用由messageType参数确定的默认图标来显示信息的对话框voidshowMessageDialog(ComponentparentComponent,Objectmessage,Stringtitle,intmessageType,Iconicon)此方法显示用于显示消息和指定所有参数的对话框MethodDescriptionintshowOptionDialog(ComponentparentComponent,Objectmessage,Stringtitle,intoptionType,intmessageType,Iconicon,Object[]options,ObjectinitialValue)此方法显示具有指定图标的对话框,其中初始选项由initialValue参数决定,而选项的数目由optionType参数决定ACCPV4.019对话框6-5验证用户身份的应用程序向工程中添加标题为“User_Login”的应用程序将JOptionPane拖放至该应用程序该应用程序将验证用户身份并显示相应消息用于验证用户身份和显示相应消息的代码ACCPV4.020对话框6-6publicvoidbtnOk_actionPerformed(ActionEvente){Stringuser;Stringpassword;user=txtUserName.getText();password=txtPassword.getText();if(user.equals(admin)&&password.equals(aptech)){dlgMessage.showMessageDialog(this,您是授权用户,经验证的用户,JOptionPane.INFORMATION_MESSAGE);}else{dlgMessage.showMessageDialog(this,非法用户名或密码,非法用户,JOptionPane.ERROR_MESSAGE);txtUserName.setText();txtPassword.setText();txtUserName.setFocusable(true);}演示:示例2ACCPV4.021菜单的事件处理演示:示例3ACCPV4.022对话框的事件处理演示:示例4ACCPV4.023总结Swing菜单由JMenubar、JMenuItem和JMenu组成AbstractButton是JMenu类的父类创建JMenuBar的实例以创建菜单与JMenuItem及其与菜单栏关联的子类不同,JPopupMenu可显示在屏幕的任何地方JCheckBoxMenuItem和JRadioButtonMenuItem用于实现菜单栏中的复选框和单选按钮JOptionPane类用于显示对话框

1 / 23
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功