1、AWT基本元素
2、组件在容器中的定位
(1)坐标方式定位
对于各容器组件来说,其坐标系原点是容器左上角。当容器位置变化时,嵌入容器的组件在容器中的相对位置并不变化。
(2)AWT布局管理器定位
布局管理器负责管理组件在容器中的显示属性,例如排列顺序,组件的大小、位置,当窗口移动或调整大小后,组件如何变化等。不同的布局管理器使用不同算法和策略,容器可以通过选择不同的布局管理器来决定布局。
布局管理器类型主要有:FlowLayout,BorderLayout,GridLayout,CardLayout,GridBagLayout。
(3)布局管理器的取消
容器定位组件的默认方式采用布局管理器,容器可以根据需要取消布局管理器,方法是调用容器方法setLayout(null)。此后,组件在容器中的位置将采用坐标方式进行定位,例如通过setBounds(int,int,int,int)来确定组件坐标位置及宽度和高度。
3、AWT事件模型
(1)层次模型
(2)委托模型
(3)委托模型的优点
1、多个监听者可以对同一个事件源对象中的同一事件进行处理。
2、一个事件源中的多个事件可以分别被不同的监听者进行处理。
3、一个监听者可以注册到多个事件源中,对同类事件进行处理。
(4)委托模型的构成
1、将所有事件都封装在包java.awt.event当中,与AWT有关的所有事件类都由java.awt.AWTEvent类派生(它的父类是EventObject)。根据事件类型的不同,分为低级事件和高级事件。
2、采用接口对事件处理内容进行细化,并作为事件源和事件处理者之间联系的桥梁。
3、AWT中常用组件可能引起的事件类型 。
(5)监听接口实现的四种方式
1、在实现者当中给出接口每个方法的实现
2、采用接口形式产生匿名对象给出实现
3、采用事件适配器,事件适配器就是针对特定的监听接口给出的默认实现
4、采用适配器形式产生匿名对象给出实现
4、图形图像处理
(1)概述
paint方法、Canvas和Graphics 对象
(2)组件重绘
(3)Graphics对象: 在paint方法当中,由其参数得到该对象的引用。 调用Component的getGraphics方法得到该组件对象的Graphics引用
绘制区域的设置:setClip方法与clipRect方法
相对坐标的使用:translate方法
Graphics2D:是Graphics的一个子类,用来绘制2D图形物件,能对形状、文本和图像的展示提供更加完善的控制。
(4)双缓存技术
在Component及其子类的paint方法中,进行图形图像绘制时,如果绘制内容复杂且频繁时,往往比较费时,常常出现绘制界面的抖动,为了解决这个问题,可以先将绘制的内容保留在一个Image对象当中,如果需要重新显示绘制的内容,例如界面最小化后重新浮现,仅仅简单的将这个Image内容再现就行了,这个技术就是双缓存技术。