文档详情

Java语言程序设计 作者 李尊朝 苏军 第12章.ppt

发布:2017-08-14约1.36万字共59页下载文档
文本预览下载声明
第十二章 Swing 组件 12.1 Swing组件概述 12.2 窗口 12.3 标签 12.4 按钮 12.5 单选按钮和复选框 12.6 文本编辑组件 12.7 列表框和组合框 12.8 菜单 12.1 Swing组件概述 早期的JDK版本中提供了Java抽象窗口工具集(Abstract Window Toolkit, AWT),其目的是为程序员创建图形用户界面提供支持,但是AWT功能有限,因此在后来的JDK版本中,又提供了功能更强的Swing类库。 12.1 Swing组件概述 Swing包含了大部分与AWT对应的组件 。多数Swing组件以字母“J”开头。 Swing组件的用法与AWT组件基本相同,大多数AWT组件只要在其类名前加J即可转换成Swing组件 。 java.swing中类的继承关系 Swing组件与AWT组件最大的不同是,Swing组件在实现时不包含任何本地代码,因此Swing组件可以不受硬件平台的限制,而具有更多的功能。 Swing组件比AWT组件拥有更多的功能。 Swing库是抽象窗口工具AWT库的扩展,提供了比AWT更多的特性和工具,用于建立更复杂的图形用户界面。 12.2 窗口 基于Swing组件的图形用户界面,采用JFrame框架作为容器。 JFrame类是从Frame类派生的。 JFrame的构造方法 JFrame的成员方法 每个JFrame窗口都有一个内容窗格(contant pane),窗口中除菜单之外的所有组件都放在其内容窗格中。 要将组件添加到其内容窗格中,首先用JFrame类的getContentPane()方法获得其缺省的内容窗格,getContentPane()方法的返回类型是java.awt.Container,然后使用add()方法将组件添加到其内容窗格中。这与在Frame窗口中直接使用add()方法添加组件明显不同。 12.3 标签 Swing中的标签组件JLabel与AWT中标签组件Label相似,可以显示文本。 JLabel组件还可以显示图标,当鼠标的指针移动到标签上时,还会显示一段提示信息。 JLabel的构造方法 JLabel的成员方法 12.4 按钮 在Swing中,所有按钮都是由AbstractButton类派生的。 Swing中按钮的功能较AWT中的按钮功能更加强大,包括给按钮添加图像、使用快捷键以及设置按钮的对齐方式,还可以将多个图像分配给一个按钮以处理鼠标在按钮上的停留等。 JButton类的构造方法 12.5 单选按钮和复选框 在Swing中,单选按钮JRadionButton用来显示一组互斥的选项。在同一组单选按钮中,任何时候最多只能有一个按钮被选中。一旦选中一个单选按钮,以前选中的按钮自动变为未选中状态。 要让多个单选按钮位于同一组,必须使用按钮组类ButtonGroup。ButtonGroup是java.swing包中的类,但不是JComponent的子类。 调用ButtonGroup类的add()方法可以将一个按钮添加到一个ButtonGroup对象中。 JRadioButton类的构造方法 Swing单选按钮举例 编程实现:窗口中有标题为Plain、Bold和Italic的3个单选按钮和1个标签,当选择任一单选按钮时,标签中显示该单选按钮被选中的信息。 Swing单选按钮举例 import java.awt.*; import java.awt.event.*; import javax.swing.*; public class JRadio extends JFrame { private JLabel lbl; private JRadioButton pla, bol,ita; private ButtonGroup buttonG; public JRadio() { super(JRadioButton Example); Container c = getContentPane(); c.setLayout( new FlowLayout() ); lbl=new JLabel(Plain is selected); pla=new JRadioButton(Plain,true); bol=new JRadioButton(Bold,false); ita=new JRadioButton(Italic
显示全部
相似文档