Java GUI编程
一、AWT
java.awt中提供了GUI设计所用的类和接口。下图描述了主要的类库之间的关系:
GUI开发常用流程
- Java把Component类的子类或间接子类创建的对象,构成一个组件。
- Java把Container的子类或间接子类创建的对象,构成一个个容器。
- 向容器添加组件。Container类提供了一个public方法add( ),一个容器可以调用这个方 法,将组件添加到该容器中。
- 容器调用remove(component c)方法移植置顶组件。也可以调用removeAll( )方法,将容器中的全部组件移除。
- 容器本身也是一个组件,因此可以把一个容器添加到另一个容器来实现容器嵌套。
二、AWT容器
awt主要提供了两种容器:1.Window(窗口) 2.Panel(面板)
三、布局管理器
- Flow Layout(流式布局管理器)是Panel的默认布局管理方式。在布局中,组件按照从左到右、从上到下的顺序布局。
- BorderLayout(边界布局)是Frame窗口的默认布局管理方式,将版面划分为东、西、南、北、中等5个区域,将添加的组件按照指定的位置放置。(该布局并不死板,Panel也是个组件,可将Panel内嵌如BorderLayout布局中,而Panel里的组件又有很多的布局方式,因此构成多种布局)。
- GirdLayout(网格布局)将容器非常规整的分割为M行 X N列的网格。
四、事件处理
事件处理流程涉及的3个对象
- 事件(Event)——一个对象,它描述了发生什么事情。事件封装了GUI组件上发生的特定行为(通常是用户的某种操作)。
- 事件源(Event Source)——产生事件的组件,这是事件发生的场所。
- 事件监听器(Event Listener)——也称为事件处理程序。监听器接收、解析和处理事件类对象、实现和用户交互的方法。
AWT事件处理流程
五、Swing
Swing是对AWT的补充,提供了新的组件。