Java语言程序 设计实用教程 SISE
Java语言程序设计实用教程
Java语言程序 设计实用教程 SISE
第13讲 图形用户界面
Java语言程序 设计实用教程 SISE
本章
学习要点:
识别用户界面屏幕的组件以及主要的类 理解布局管理器,在用户接口上组织组 件 理解事件监听器,理解委派事件模型 掌握Java图形用户界面开发方法
3
Java语言程序 设计实用教程 SISE
13.1 图形用户界面组件
Java语言程序 设计实用教程 SISE
图形用户界面GUI (见P349图13-1)
至今为止所编写的Java程序只能从键盘输入,在控制 台屏幕上显示结果。 图形用户界面(GUI,Graphical User Interface)是 为应用程序提供一个图形化的界面,程序通过GUI与用 户交互,GUI能使一个应用程序具有与众不同的“外观” 与“感觉”,是目前应用程序大多数是采用的方式。
–WinUI:标准的MS Windows或X-Windows的应用系统,应 用使用来自操作系统的GUI元素和其它加入的元素 –WebUI:Web应用系统,基于浏览器操作
Java语言程序 设计实用教程 SISE
Java程序图形界面的坐标设置 程序图形界面的坐标设置
原点(0,0)
X轴
Y轴
Java语言程序 设计实用教程 SISE
用户图形接口AWT
AWT(Abstract Window Toolkit)是一个独立平台的 窗口工具组件集,它依赖于对等组件(Peer),而对 等组件是一个本地 本地GUI组件 组件,由AWT类管理。AWT的 本地 组件 作用是给用户提供基本的界面组件,如按钮、列表框、 菜单等。 AWT最初只包括与本地对等组件相关联的组件,称为 称为 重量组件( 重量组件(Heavyweight Component),这些组件 ) 在它们自己的本地不透明窗口中绘制,用AWT创建的 外观在不同的操作
系统平台上是不同。 应用外观在不同的操作系统平台上是不同 外观在不同的操作系统平台上是不同
Java语言程序 设计实用教程 SISE
用户图形接口Swing
Java基类(Java Foundation Classes,JFC)是 关于GUI组件和服务的完整集合,主要由5个API构 成:AWT、Swing、Java 2D、Drag and Drop、 Accessibility Swing是建立在AWT基础之上的,它利用了AWT 的底层组件,包括图形、颜色、字体、工具包和布 局管理器等。使用 使用AWT最好的部分来建立一个新 最好的部分来建立一个新 使用 的轻量组件集,而丢弃了AWT中有问题的重量组 的轻量组件集,而丢弃了 中有
问题的重量组 件部分。 件部分 通过引入新特性和丰富的功能,Swing提供了比 提供了比 AWT更全面的组件集合。Swing API是围绕实现 更全面的组件集合。 更全面的组件集合 AWT各个部分的API构建的,这保证了所有早期的 AWT组件仍然可以使用。
Java语言程序 设计实用教程 SISE
JFC的两个特性
javax.swing.plaf:提供一个接口
和许多抽象类, Swing 用它们来提供自己的可插入外观功能 可插入外观功能。例如可 可插入外观功能 用提供本地操作系统的外观,在Windows上执行应用, 看上去像是专为Windows环境定制,其它Linux、 UNIX也类似。 拖拽与放置(Drag-and-Drop):把数据从源 转变到目 拖拽与放置 标。源和目标可以是两个不同应用的控件,还可在剪 贴板之间来回传递数据。java.awt.dnd和 java.awt.datatransfer包可用于拖拽与放置操作
Java语言程序 设计实用教程 SISE
基本概念
组件(Component):可视化控件,例如文本框、复 : 组件 选框、列表框、按钮等称为组件,是 Java的图形用户 是 的图形用户 界面的最基本组成部分,组件不能独立地显示出来, 界面的最基本组成部分 必须将组件放在一定的容器中才可以显示出来 容器(Container):容器是一种特殊的组件,一种能 : 容器 够容纳其他组件或容器的组件。 –每个组件继承它的父容器的性质,如字体、颜色 –容器控制存放在其中的组件的位置 布局管理器(Layout Manager):为了使图形用户界 布局管理器 : 面具有良好的平台无关性