没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
试读
170页
AWT(Abstract Window Toolkit)是Java提供的一套用于创建图形用户界面(GUI)的原生窗口工具包。它是Java最早的GUI工具包,提供了一系列的类和方法,用于创建窗口、按钮、文本框等GUI组件,并处理用户的输入事件。 AWT的特点是使用操作系统的原生窗口和组件,因此在不同的操作系统上,界面的外观和行为可能会有所不同。这使得AWT在跨平台兼容性方面存在一些问题。 Swing是在AWT的基础上开发的一套GUI工具包。它提供了一系列的类和方法,用于创建更加丰富和灵活的GUI界面。与AWT不同的是,Swing的组件是完全由Java代码实现的,而不依赖于操作系统的原生组件。这使得Swing具有更好的跨平台兼容性,并且可以实现更加美观和自定义的界面效果。 Swing提供了许多常用的GUI组件,如按钮、文本框、标签、列表等,并且支持布局管理器来帮助开发者更方便地布局界面。此外,Swing还提供了一些高级组件,如表格、树状结构等,以及一些特殊效果的组件,如滚动面板、分隔窗格等。
资源推荐
资源详情
资源评论
java使用AWT和Swing相关的类可以完成图形化界面编程,其中AWT的全称是抽象窗口工具集(Abstract Window
Toolkit),它是sun公司最早提供的GUI库,这个GUI库提供了一些基本功能,但这个GUI库的功能比较有限,所以后来
sun公司又提供了Swing库。通过使用AWT和Swing提供的图形化界面组件 库,java的图形化界面编程非 常简单,程
序只需要依次创建所需的图形组件,并以合适的方式将这些组件组织在一起,就可以开发出非常美观的用户界面。
本次讲解的java开发平台是jdk9,希望大家课后练习时也使用jdk9,因为不同版本的jdk提供的GUI库的效果略有不
同。
二. AWT 编程
2.1 AWT简介
当 JDK 1.0发布时, Sun 提供了 一套基本的GUI类库,这个GUI类库希望可以在所有平台下都能运行 , 这套基本
类库被称为"抽象窗口工具集 CAbstract Window Toolkit )",它为Java应用程序提供了基本的图形组件 。 AWT是窗口
框架,它从不同平台的窗口系统中抽取出共同组件 , 当程序运行时,将这些组件的创建和动作委托给程序所在的
运行平台 。 简而言之 ,当使用 AWT 编写图形界面应用 时, 程序仅指定了界面组件的位置和 行为,并未提供真正
的实现,JVM调用操作系统本地的图形界面来创建和平台 一致的对等体 。
使用AWT创建的图形界面应用和所在的运行平 台有相同的界面 风格 , 比如在 Windows 操作系统 上,它就表现出
Windows 风格 ; 在 UNIX 操作系统上,它就表现出UNIX 风格 。 Sun 希望采用这种方式来实现 " Write Once, Run
Anywhere " 的目标 。
2.2 AWT继承体系
所 有 和 AWT 编 程 相 关 的 类 都 放 在 java.awt 包 以 及 它 的 子 包 中 , AWT 编 程 中 有 两 个 基 类 :Component 和
MenuComponent。
Component:代表一个能以图形化方式显示出来,并可与用户交互的对象,例如 Button 代 表一个按钮,TextField
代表 一个文本框等;
MenuComponent:则代表图形界面的菜单组件,包括 MenuBar (菜单条)、 Menultem (菜单项)等子类。
其中 Container 是一种特殊的 Component,它代表一种容器,可以盛装普通的 Component。
AWT 中 还 有一个 非 常 重 要 的 接 口 叫 LayoutManager , 如 果 一 个 容 器 中 有 多 个 组 件 , 那 么 容 器 就 需 要 使 用
LayoutManager来管理这些组件的布局方式。
2.3 Container容器
方法签名 方法功能
setLocation(int x, int y) 设置组件的位置。
setSize(int width, int height) 设置组件的大小。
setBounds(int x, int y, int width, int height) 同时设置组件的位置、大小。
setVisible(Boolean b): 设置该组件的可见性。
方法签名 方法功能
Component add(Component
comp)
向容器中添加其他组件 (该组件既可以是普通组件,也可以 是容器) , 并返回
被添加的组件 。
Component getComponentAt(int
x, int y):
返回指定点的组件 。
2.3.1 Container
继承体系
Winow是可以独立存在的顶级窗口,默认使用BorderLayout管理其内部组件布局;
Panel可以容纳其他组件,但不能独立存在,它 必须内嵌其他容器中使用,默认使用FlowLayout管理其内部
组件布局;
ScrollPane 是 一个带滚动条的容器,它也不能独立存在,默认使用 BorderLayout 管理其内部组件布局;
2.3.2
常见
API
Component作为基类,提供了如下常用的方法来设置组件的大小、位置、可见性等。
Container作为容器根类,提供了如下方法来访问容器中的组件
方法签名 方法功能
int getComponentCount(): 返回该容器内组件的数量 。
Component[] getComponents(): 返回该容器内的所有组件 。
2.3.3
容器演示
2.3.3.1 Window
import java.awt.*;
public class FrameDemo {
public static void main(String[] args) {
//1.创建窗口对象
Frame frame = new Frame("这是第一个窗口容器");
//设置窗口的位置和大小
frame.setBounds(100,100,500,300);
//设置窗口可见
frame.setVisible(true);
}
}
剩余169页未读,继续阅读
资源评论
Java橙旭源
- 粉丝: 45
- 资源: 12
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功