第 9 章 Java的图形用户界面
2017/11/10
1
Java面向对象程序设计教程
主要内容
JFC的组成
AWT
Swing
Drag and Drop
Java 2D
Java Accessibility
应用程序和小程序界面图形化
Swing的根面板
小程序的典型例子
应用程序的典型例子
结合小程序和应用程序的典型例子
AWT的组件布局管理模型
基于策略模式的授权模型
布局管理器类
AWT的事件处理模型
基于观察者模式的授权模型
事件源
事件类
事件监听器
创建事件监听器对象
2017/11/10
2
Java面向对象程序设计教程
JFC的组成
2017/11/10
3
Java面向对象程序设计教程
Java基础类
Java Foundation Classes,JFC
JFC由5个API组成:AWT、Swing、Java 2D、Drag and essibility
2017/11/10
4
Java面向对象程序设计教程
基于对等组件的AWT
AWT(Abstract Window Toolkit)是一个独立平台的窗口工具组件集,它依赖于对等组件(Peer),而对等组件是一种本地GUI组件,由AWT类管理。
AWT的作用是给用户提供基本的界面组件,如按钮、列表、菜单等等。
AWT组件中,包含有对其对等组件的大量实用操作,而AWT类仅仅是对等组件外围的包装与操作工具,因此,对等组件可以快速产生一个GUI工具组件。
对于最初的AWT,其开发组只用了不到6个星期的时间,但存在大量的缺陷。
2017/11/10
5
Java面向对象程序设计教程
重量组件
AWT最初只包括与本地对等组件相关联的组件,称为重量组件(ponent)。
这些组件在它们自己的本地不透明窗口中绘制,这样使用将花费昂贵的代价,而且在更改其默认行为时,不可以为其扩展子类。
它们必须是矩形的,而且不能有透明的背景。
2017/11/10
6
Java面向对象程序设计教程
轻量组件
在AWT 。
。
轻量组件没有本地对等组件,它不在本地不透明窗口中绘制,而是在它们的重量容器窗口中绘制。
轻量组件不会导致与它们关联的不透明窗口的性能损失,而且还可以有透明的背景。
透明的背景使显示的轻量组件可以是非矩形的,虽然所有组件(重量的或轻量的)都有一个矩形边框。
在轻量组件的容器中必须有一个是重量组件,否则无法在窗口内绘制轻量组件。
2017/11/10
7
Java面向对象程序设计教程
AWT组件的分类
菜单、按钮、标签、列表等组件的抽象基本类,AWT中大约有一半的类是从它这里扩展出来的。
ponent的抽象基本类。在容器中可以包含多个组件,我们可以使用容器将相关组件组合成一个整体,以简化程序GUI的设计,同时有利于组件的显示安排。由Container演变出来的类有Panel、Applet、Window、Dialog和Frame等。
定义容器中组件位置和尺寸方法的接口。Java中定义了几种默认的布局管理器,如FlowLayout、BorderLayout、CardLayout、GridLayout和GridBagLayout等
定义组件内图形操作的基本类,每个组件都有一个相关的图形对象。
2017/11/10
8
Java面向对象程序设计教程
Swing和AWT的关系
Swing是用来替代AWT的重量组件,而不是用来替代AWT本身。
Swing使用AWT最好的部分来建立一个新的轻量组件集,并且丢弃了AWT中有问题的重量组件部分。
Swing利用了AWT的底层组件,包括图形、颜色、字体、工具包和布局管理器。
Swing没有使用AWT的顶层组件,除了Frame、Window和Dialog类,它们分别被Swing的重量组件JFrame、JWindow和JDialog所扩展。
2017/11/10
9
Java面向对象程序设计教程
插入式界面样式
Swing支持插入式界面样式(Pluggable Look-and-Feel),它的基础是模型-视图-控制(Model-View-
09 Java的图形用户界面 来自淘豆网m.daumloan.com转载请标明出处.