文档详情

第8章图形用户界面编程讲解.ppt

发布:2017-02-15约1.32万字共29页下载文档
文本预览下载声明
第8章 图形用户界面编程 Java程序设计及应用开发教程 第8章 图形用户界面编程 8.1 组件概述 8.2 AWT图形化界面基础 8.3 事件处理机制 8.4 本章小结 图形用户界面是为应用程序提供一个图形化的界面,通过它用户和程序之间可以方便地进行交互,完成应用程序使用中的数据输入与输出等操作任务。本章主要讲述了容器AWT组件(包括:Frame、Panel、Button、Label、文本框与文本域、复选框与单选按钮、下拉列表与列表、Dialog与Canvas画布等),同时介绍了事件处理机制及其诸多事件等。 8.1 组件概述 设计和实现图形用户界面的设计的主要任务包括如下两个层次: 创建组成界面的各成分和元素,指定它们的属性和位置关系,根据具体需要布局排列,从而构成完整的图形用户界面的外观表象。 定义图形用户界面的事件和各界面元素所对不同事件的响应,从而实现图形用户界面与用户间的交互功能。 8.1.1 组件 Java图形用户界面最基本的组成部分是组件,组件是一个可以以图形化方式显示于屏幕上与用户进行交互的对象。如:按钮(button)等。 8.1.2 容器 容器(Container)实际上是ComPonent的子类,由Container类的子类和间接子类创建的对象均称为容器,可以通过add()等方法向容器添加组件,容器本身也是组件,因此可以把一个容器添加到另一个容器中实现容器的嵌套,它具有组件的所有性质。 Java 中 AWT与Swing组件各含有3类常用的容器,前者为Frame、Panel和Applet,后者是JFrame、JPanel、Japplet,Swing同时还有JScrollPane(滚动窗格)、JSplitPane(拆分窗格)和JLayeredPane(分层窗格)。 8.1 组件概述 8.1.3 AWT组件 抽象窗口工具包AWT(Abstract Window Toolkit)可用于Java的applet和applications中,支持图形用户界面编程的功能,包括: 用户界面组件、事件处理模型;图形和图像工具,包括形状、颜色和字体类;布局管理器,可以进行灵活的窗口布局而与特定窗口的尺寸和屏幕分辨率无关;数据传送类,可以通过本地平台的剪贴板来进行剪切和粘贴。 JDK 1.2新增加了一个javax.swing包,该包提供了功能更为强大的用来设计GUI界面的类。由java.awt包中的类创建的组件习惯上称为重组件。 8.1.4 Swing组件 Swing是使用AWT作为基础构建起来的的,Javax.swing包为我们提供了更加丰富的、功能强大的Swing组件,其中大部分组件是轻组件,没有同位体。它的大多数组件都是AWT组件名前面加一个“J”,Swing的用法与AWT基本相同,它也使用AWT的事件处理机制,只是组件的风格不同与名字变了,所包含的包也不同(Swing的组件主要包含在javax.swing包中),同时还增加了一些原来没有的特性。例如,一个按钮可以有与之相关联的一幅图像和一个字符串,这幅图像还可以根据按钮状态的变化而更换。 8.1 组件概述 Swing组件无需同位体,故称之为轻组件。 Javax.swing包中JComponent(轻组件)类是java.awt包中Container类的一个直接子类、Componenet类的一个间接子类。Javax.swing包中的JFame类和JDialog类分别是java.awt包中Frame类和Dialog类的直接子类、Window类的间接子类。 在Java中必须理解容器和组件两个基本概念: Java把由Component类的子类或间接子类创建的对象称为一个组件。 Java把由Container的子类或间接子类创建的对象称为一个容器。 可以向容器添加组件。Container类提供了一个public方法add(),一个容器可以调用这个方法将组件添加到该容器中。 调用removeAl()方法可以移掉容器中的全部组件,调用remove(Componentc)方法可以移掉容器中参数指定的组件。 每当容器添加新的组件或移掉组件时,应该让容器调用validate()方法,以保证容器中的组件能正确显示出来。 8.1.5 Swing与AWT的区别: Swing 组件全部是由纯Java编写的,功能强大。 AWT是由JDK 1 .0和JDK 1.1平台提供的; Swing所有组件都以J开头: Jbutton、Jpanel等; Swing 使用的包是:Javax.Swing;AWT使用的包为:Java.awt 8.2 AWT图形化界面基础 8.2.1 Frame框架 Frame组件在Java的顶层窗口中可以独立使用,
显示全部
相似文档