一、GUI常识和GUI体系结构
1、用户与计算机的交互方式
方式1:GLI(命令用户行接口,即DOS),这种方式需要记住一些命令,操作不方便。
方式2:GUI(图形用户接口),使用图形化的方式操作计算机,形如计算机的文件管理界面,操作方便直观。
注:java为GUI提供的对象都存在java.awt和javax.swing两个包中。
java.awt包:抽象窗口工具包,需要调用本地系统方法实现功能,有点依赖于平台,属于重量级控件。
javax.swing:在awt的基础上,建立一套图形界面系统,其中组件更多,而且完全由java实现,增强了移植性,属于轻量级控件,在任何系统上显示都一样。
2、awt包继承体系结构
注意:Container是容器,是一个特殊的组件,可以通过add方法来添加其他组件。
二、窗口的布局管理器
布局:是窗口中组件的排放方式。
1、常见的布局管理方式:
(1)流式布局管理(Flowlaout)
从左到右的顺序排列。
Panel默认的布局管理器。
(2)边界布局管理(BorderLayout)-如果没有指定位置就以整个最大面积填充窗体
东,南,西,北,中。
Frame默认的布局管器
(3)网格布局管理(GirdLayout)
规则的矩阵。
(4)卡片布局管理(CardLayout)
选项卡。
(5)网格包布局管理(GirdLayout)
非规则的矩阵。
三、事件监听机制
1、事件监听机制由4部分组成:
(1)事件源(组件):awt和Swing包中的组件
(2)事件(Evert):每个组件的特有事件和共有事件
(3)监听器(Listener):将触发的事件源的事件动作封装在监听器中
(4)事件处理:在监听器中对事件动作进行处理
2、事件监听原理:
(1)将可以触发某一个事件的动作(不止一个动作)都已经封装到了监听器中
如果事件监听器接口中的方法少于3个,可以直接使用该监听器接口的匿名子类对象,重写所有方法。
如果事件监听器接口中的方法多于3个,则都有对应的抽象子类,然后再使用这些抽象子类的匿名子类对象。
(2)每一个事件监听器接口内都定义了作用于事件源的动作方法,但是方法都是抽象的,需要事件监听器的抽象子类重写事件监听器接口中的方法,
且这些重写的方法不是抽象的(不是抽象的好处在于使用这些抽象子类对象时,不用重写所有的方法,因为一般使用抽象子类的匿名子类对象)。
事件监听机制原理流程图示:
3、事件处理
voidwindowActivated(WindowEvente)
激活窗口时调用。
voidwindowClosed(WindowE