社区
Java SE
帖子详情
有了Swing,还有必要使用AWT吗?
zhmjz
2002-11-07 01:01:13
只使用Swing可以吗?
...全文
77
1
打赏
收藏
有了Swing,还有必要使用AWT吗?
只使用Swing可以吗?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
1 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
kofwr
2002-11-07
打赏
举报
回复
理论上说是awt是被淘汰了,但是applet也是到出存在的,你要保证浏览器的用户能够浏览的Applet,不需要下载JRE,就得用awt,不过过个5年,awt也许就没用了吧,不过他毕竟是Swing的原型........
AWT
基础知识
为什么需要GUI? 我们前面编写的程序命令行的,用户的体验度极差。 抽象窗口工具包(Abstract Window Tookit)是为java程序提供建立图形用户界面(Graphics User Interface GUI)的工具集。主要包含如下组件: 1. 用户界面组件 2. 事件处理模型 3. 图形图像工具(形状、颜色、字体) 4. 布局管理器
AWT
的优势: 1. 最早的JAVA GUI包,内嵌到JDK中,无需引入其他类,功能稳定 2.
AWT
组件都是线程安全的 3. 界面编程基础. 学会
AWT
, 很容易去学
swing
/SWT等功能较强大的GUI组件.
AWT
的缺点: 1. 组件的创建完全依赖操作系统实现,导致不同的操作系统下出现不同的外观。 说白了,
awt
的组件是由操作系统绘制的,我们也说
awt
组件是重量级的组件。 这个工具包提供了一套与本地图形界面进行交互的接口。
AWT
中的图形函数与操作系统所提供的图形函数之间有着一一对应的关系,我们把它称为peers。也就是说,当我们利用
AWT
来构件图形用户界面的时候,我们实际上是在利用操作系统所提供的图形库。由于不同操作系统的图形库所提供的功能是不一样的,在一个平台上存在的功能在另外一个平台上则可能不存在。为了实现Java语言所宣称的"一次编译,到处运行"的概念,
AWT
不得不通过牺牲功能来实现其平台无关性,也就是说,
AWT
所提供的图形功能是各种通用型操作系统所提供的图形功能的交集。由于
AWT
是依靠本地方法来实现其功能的,我们通常把
AWT
控件称为重量级控件。
AWT
并没有为GUI组件提供真正的实现,而是调用运行平台的GUI组件来创建和平台一致的对等体peers,因此程序中Textarea实际上是windows的多行文本域组件的对等体,具有和他相同的行为。所以,你右键单击textarea会出现菜单… 2. 线程安全导致运行速度慢 3. 为了保证程序的可移植性,
AWT
组件集遵循最大公约数原则,即
AWT
只拥有所有平台上都存在的组件的公有集合。有些常用的组件不支持,比如:表、树、进度条等。字体也只能支持4种。 为什么还需要学习
AWT
? 实际开发中
使用
AWT
的情况非常少,但是我们仍然有
必要
学习
AWT
。主要原因如下: 1.
Swing
是在
AWT
基础上构建的,事件模型和一些支持类(形状、颜色、字体)都一样。掌握
AWT
有利于后面学习
SWING
. Eclipse不是
swing
开发的,是swt开发的。 2. 学习一下GUI编程。事实上,编程思路和其他语言类似
跟我学Java
Swing
之游戏设计.doc
跟我学Java
Swing
之游戏设计 一 谁知道通天的巴比伦塔耗费了多少沙石?又有谁知道罗马的建成经历了多少个日夜?我 们惟一知道的是,没有一块块砖石的垒砌,就没有蜿蜒万里的长城;没有巨石和黏土的堆 集,就没有亘古不变的金字塔。由此可见,基础知识的准备对于我们学习任何事物都至 关重要,那么,就让我们从认识
Swing
的一些基础功能开始,启动我们建造罗马的伟大工 程吧! 前言 Java咖啡馆已经开张不少时日了,如果你已经喜欢上了Java这杯咖啡的味道,那么 记得常来哦。这一次,我们为大家准备了一大杯香浓的咖啡——将以开发一个"连连看"游 戏为蓝本,和大家共同学习Java中
Swing
的用法,当你细心品味这杯咖啡后,你会发现, 不但Java这杯咖啡还别有一番风味,而且还学会了专业游戏的开发方法,真是两全其美 ! 为了让大家先睹为快,下图便是游戏的截图。大家可以下载游戏试玩(下载游戏程 序;下载源文件),然后在命令行方式下
使用
java -jar kyodai.jar来运行。此外,还可以到我的主页http://www.ismyway.com上下载这个游戏 的单机版以及手机版进行试玩(见图1)。 Java咖啡馆以前介绍过
AWT
的知识,那么
Swing
和
AWT
究竟有什么区别呢?学习Java的 人都可能听到或看到过重量级控件和轻量级控件这个字眼,
AWT
就是我们通常所指的重量 级控件,
Swing
则是轻量级控件。我们都知道Java的口号是"一次编写,到处运行",这也 就要求在我们的程序中,尽量
使用
纯Java的代码。很不幸的是,
AWT
依赖与本地平台的接 口,因此,在不同的操作系统上,
使用
AWT
制作的界面看起来可能会有些细微区别。Swi ng则完全不同了,
Swing
是用纯Java编写的,因此,
使用
Swing
编写的界面能保证在所有 平台上有着同样的外观。这里还有一个窍门:在JDK中,为便于区别,所有
Swing
控件都以 大写字母J开头,比如说JButton(
AWT
中对应的是Button),这样你就很容易区分
Swing
控件和
AWT
控件了。
Swing
初体验 对于想学习
Swing
编程的朋友,我们特地为大家准备了一些小窍门。首先,下载并阅 读代码是极有
必要
的。由于这是一篇关于
Swing
的教程,所以,我们只是尽可能讲解一些 与
Swing
有关的内容,与
Swing
无关的内容一般不会涉及,例如算法部分。其次,受篇幅 限制,也不可能在这里将每部分代码都写得完完整整的,所以,大家也需要对照完整代 码来看。最后,为了使大家更容易把精力集中在
Swing
学习上,我们也将游戏开发中所需 资源放在下载文件中,大家下载后便能够编译运行,看到执行结果。( 下载游戏源文件) 1.顶层容器 什么是顶层容器?当我们
使用
Java进行图形编程的时候,图在哪里绘制呢?我们需 要一个能够提供图形绘制的容器,这个容器就被称为顶层容器,你也可以把它想象成一 个窗口。顶层容器是进行图形编程的基础,一切图形化的东西,都必然包括在顶层容器 中。在
Swing
中,我们有三种可以
使用
的顶层容器,它们分别是: ·JFrame:用来设计类似于Windows系统中的窗口形式的应用程序。 ·JDialog:和JFrame类似,只不过JDialog是用来设计对话框。 ·JApplet:用来设计可以在嵌入在网页中的Java小程序。 如果需要
使用
Swing
制作一个窗口类程序,我们的代码看起来应该是这样: import javax.
swing
.*; public class KyodaiUI extends JFrame { …… } 2.控件 控件是构成应用程序界面的基本元素,按钮、文本框、进度条等,这些都是控件。 控件(这里我们只讨论可视化控件)又可以分为容器控件和非容器控件。从字面意义上来 理解,容器控件就是能包含其他控件的特殊控件,例如,Java中的JPanel控件就属于容 器型控件,我们可以在JPanel中放置按钮、文本框等非容器控件,你甚至可以在JPanel 中再放置若干个JPanel控件(值得注意的是,顶层容器也是容器型控件,每一个窗口应用 程序中有且只能有一个顶层容器控件,换句话说,顶层容器不能包括在其他的控件中)。 Java中的容器控件有很多,除刚才提到的JPanel外,还有JTabbedPane、JScrollPa ne等,非容器控件有JButton、JLabel、JTextField等。如果你需要向某个容器型的控件 中添加控件,你可以
使用
add(Component comp) 方法来实现,如: JPanel panel = new JPanel(); JButton button = new JButton(); panel.add(button); 3
Java实战项目:计算器应用程序 - 实现基本的数学运算功能
当创建一个计算器应用程序时,我们需要考虑如何实现基本的数学运算功能,包括加法、减法、乘法和除法。在这篇Java实战博客中,我将向您展示如何
使用
Java编程语言创建一个简单的计算器应用程序。我们将从创建用户界面开始,然后逐步实现不同的数学运算功能。在整个过程中,我将提供清晰的思路和Java代码示例,以确保您能够理解和实现这个应用程序。 第一部分:创建用户界面 首先,让我们创建一个用户界面,让用户能够输入数字和选择要执行的操作(加法、减法、乘法、除法)。我们将
使用
Java
Swing
库来创建图形用户界面(GUI)。 步骤1:导入
必要
的库 首先,在Java代码中导入
必要
的库: java Copy code import javax.
swing
.*; import java.
awt
.*; import java.
awt
.event.ActionEvent; import java.
awt
.event.ActionListener; 步骤2:创建主应用程序类 创建一个名为CalculatorApp的主应用程序类,并在其中初始化用户界面:
java项目:小说管理系统(java +
swing
+ mysql+报告文档 + E-R图)
java项目:小说管理系统(java +
swing
+ mysql+报告文档 + E-R图) 一、开发环境: 开发工具:eclipse、HeidiSQL服务器 数据库:MySQL5.7 操作系统:Microsoft Windows 10 二、功能 (1)小说管理: (2)小说内容管理: (2)消费记录管理: (3)个人书架管理: (4)会员管理: (5)会员价位管理 (6)签约作家管理: 查询、增加、修改作家信息。 (7)用户信息管理: 查询、增加和修改、删除人物基础信息 (8)财务管理: 查询、修改开支内容和运营方账户余额 (9)管理员管理: 查看管理员记录以及
必要
时的修改
java版图书管理系统
java版图书管理系统,基本实现了读者管理,图书管理等一系列
必要
功能;采用d/s架构,oracle11g数据库,图形界面主要用javax.
swing
和 java.
awt
包进行开发,界面简洁,稳定性好,容错能力强。
Java SE
62,612
社区成员
307,332
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章