Skip to content

java.jwt - 抽象窗口工具包 - GUI ​

java.awt 包简介 ​

java.awt (Abstract Window Toolkit,抽象窗口工具包)是 Java 中用于构建图形用户界面 (GUI) 应用程序的核心包之一。它提供了一系列类和接口,用于处理用户界面组件、事件处理、图形绘制、布局管理和输入设备交互等任务。 java.awt 包含的组件包括按钮、标签、文本框、窗口、对话框等,并支持与底层操作系统的交互。

java.awt 包中的 Class 列表及分组 ​

java.awt 包中的类可以根据其设计用途分为以下几类:组件类、事件处理类、布局管理器类、图形与颜色类、输入与输出类、其他辅助类等。

1. 组件类 ​

这些类代表用户界面组件,用户通过这些组件与程序进行交互。

ClassExplanation
Button表示一个按钮,用于触发用户事件。
Canvas提供一个自定义绘制区域,用户可以在其上绘制图形。
Checkbox复选框组件,用户可以选择或取消选择该组件。
CheckboxGroup用于创建一组互斥的复选框(即单选按钮组)。
Choice下拉列表,允许用户从多个选项中进行选择。
Component是所有 AWT 组件类的超类。
Container是能够包含其他组件的组件,例如面板、窗口等。
Label显示文本的静态组件,用户不能编辑。
List列表框组件,显示多个可选择的选项。
Scrollbar用于垂直或水平滚动内容的滚动条组件。
TextComponent文本输入组件的超类。
TextField单行文本输入组件。
TextArea多行文本输入组件。
Window表示一个窗口,用于显示图形用户界面。
Frame是一个顶层窗口,带有边框、标题栏和关闭按钮。
Panel一个通用的容器组件,用于将组件分组。
Dialog对话框窗口,通常用于显示短时间的消息或与用户进行交互。
Menu菜单项的容器,用于实现菜单栏中的下拉菜单。
MenuBar是用于容纳多个菜单项的组件,通常显示在窗口顶部。
MenuItem菜单中的单个条目。
PopupMenu弹出式菜单,用于右键单击时显示上下文相关的操作。
FileDialog显示一个用于选择文件的对话框窗口。

2. 事件处理类 ​

这些类与 AWT 事件模型相关,用于处理用户交互,如鼠标点击、键盘输入等。

ClassExplanation
AWTEventAWT 事件的超类,表示所有事件对象的基类。
ActionEvent表示用户的动作事件,如按钮点击或菜单项选择。
AdjustmentEvent表示调整事件,如滚动条的滚动。
FocusEvent焦点事件,表示组件获得或失去焦点。
InputEvent所有用户输入事件(键盘和鼠标)的基类。
KeyEvent键盘事件,表示键盘上的按键按下或释放。
MouseEvent鼠标事件,表示鼠标点击、移动、拖动等操作。
WindowEvent窗口事件,表示窗口的状态变化,如关闭、最小化、激活等。
EventQueueAWT 事件队列,管理和调度事件的队列。负责将事件从事件源传递到事件处理程序,确保线程安全。

java.awt.EventQueue - AWT 事件队列

java.awt.ActionEvent 方法

3. 布局管理器类 ​

这些类控制组件在容器中的布局和排列方式。

ClassExplanation
BorderLayout容器的组件按东、南、西、北、中区域布局。
FlowLayout按顺序排列组件,默认从左到右排列。
GridBagLayout更复杂的网格布局,允许组件跨越多行或多列。
GridLayout容器内的组件按规则的网格布局排列。
CardLayout容器的组件以卡片形式切换,只显示一个组件。

4. 图形与颜色类 ​

这些类处理图形绘制、颜色处理和其他相关操作。

ClassExplanation
Graphics提供基本的绘制操作,如绘制线条、矩形、图像等。
Color表示颜色,支持 RGB 和 alpha 通道。
Font表示用于文本绘制的字体。
FontMetrics提供与字体和字符测量相关的操作。
Image表示用于在屏幕上显示的图像。
Toolkit提供与本地系统资源交互的工具,如图像加载、剪贴板等。

5. 输入与输出类 ​

这些类处理输入设备(如键盘、鼠标)的操作和系统剪贴板的使用。

ClassExplanation
Clipboard表示系统剪贴板,允许程序与剪贴板进行交互。
ClipboardOwner指示类实现剪贴板所有权接口。
KeyboardFocusManager处理键盘焦点的管理,控制当前焦点的组件。
MouseInfo提供有关鼠标设备的信息,如鼠标位置。

6. 其他辅助类 ​

这些类用于提供额外的支持功能,如矩形、维度、点等几何结构的处理。

ClassExplanation
Dimension表示宽度和高度的尺寸类。
Point表示平面上的 x 和 y 坐标。
Rectangle表示矩形的几何形状。
Insets表示容器边距,即容器与其内容之间的空白区域。
Cursor表示鼠标光标的图形和行为。
Robot允许程序生成本地系统输入事件,如鼠标和键盘事件。

总结 ​

java.awt 包提供了丰富的 GUI 组件、事件处理机制、布局管理器和图形绘制支持,能够满足图形用户界面的基本需求。通过这些类和接口,Java 程序员可以创建跨平台的桌面应用程序,并控制用户界面组件的布局和行为。