没有合适的资源?快使用搜索试试~ 我知道了~
首页\Java基础类 \Java基础类
\Java基础类 \Java基础类
4星 · 超过85%的资源 需积分: 10 19 下载量 191 浏览量
更新于2023-03-03
评论
收藏 607KB DOC 举报
\Java基础类\Java基础类\Java基础类\Java基础类\Java基础类\Java基础类\Java基础类\Java基础类\Java基础类\Java基础类
资源详情
资源评论
资源推荐
第11章 Java 基础类
JDK1.2 提供了 Java 基础类,其中的一部分就是 Swing。Swing 是构筑在 AWT 上层的一些组件的集合
(为了保证平台独立性,它是用 100%的纯 Java 编写)。本模块介绍了 JFC 和 Swing 图形用户界面的实现。
第一节 相
关问题
讨论-以下为
与本模块内容有
关的问题:
AWT 本
身 是 非
常 有 用
的 , 它
是 一 个
新 的 类
集 合 的
一 部 分
这个新的类集合称为 Java 基础类(JFC),它作为一个整体,将 GUI 提升到了一个新的水平
层次。JFC 究竟是什么,特别地,什么是 Swing?什么事 Swing 可以做但 AWT 不能?
第二节 目 标
在完成了本模块的学习后,你应当能够:
认识 Java 基础类的关键特性
描述 com.sun.java.swing 包的关键特性
认识 Swing 组件
定义容器和组件,并解释如何联合使用它们来构造一个 Swing GUI
编写,编译并运行一个基本的 Swing 应用程序
高效地使用诸如 Jframe 和 Japplet 等顶层容器
参考文献
以下参考文献可提供有关本模块论题的其他细节内容:
The Java Tutorial , 这 是 Sun Microsystems 的 一 本 在 线 教 材 , 可 以
从 http://java.sun.com/docs/books/tutorial
得到。
第三节 介 绍
104
Java 基础类是关于 GUI 组件和服务的完整集合,它大大简化了健壮 Java 应用程序的开发和实现。
JFC,作为 JDK1.2 的一个有机部分,主要包含 5 个 API:AWT,Java2D,Accessibility,Drag &
Drop,Swing。它提供了帮助开发人员设计复杂应用程序的一整套应用程序开发包。
正如前面那些模块中所讨论的那样,AWT 组件为各类 Java 应用程序提供了多种 GUI 工具。
Java2D 是一图形 API,它为 Java 应用程序提供了一套高级的有关二维(2D)图形图像处理的类。
Java2D API 扩展了 java.awt 和 java.awt. image 类,并提供了丰富的绘图风格,定义复杂图形的机制和精
心调节绘制过程的方法和类。这些 API 使得独立于平台的图形应用程序的开发更加简便。
Accessibility API 提供了一套高级工具,用以辅助开发使用非传统输入和输出的应用程序。它提供了
一个辅助的技术接口,如:屏幕阅读器,屏幕放大器,听觉文本阅读器(语音处理)等等。
Drag & Drop 技术提供了 Java 和本地应用程序之间的互操作性,用来在 Java 应用程序和不支持 Java
技术的应用程序之间交换数据。
JFC 模块的重点在 Swing。Swing 用来进行基于窗口的应用程序开发,它提供了一套丰富的组件和工
作框架,以指定 GUI 如何独立于平台地展现其视觉效果。
11.3.1 Swing 介绍
Swing 提供了一整套 GUI 组件,为了保证可移植性,它是完全用 Java 语言编写的。
可插的外观和感觉
可插的外观和感觉使得开发人员可以构建这样的应用程序:它们可以在任何平台上执行,而且看上
去就象是专门为那个特定的平台而开发的。一个在 Windows 环境中执行的程序,似乎是专为这个环境
而开发的;而同样的程序在 Unix 平台上执行,它的行为又似乎是专为 Unix 环境开发的。
开发人员可以创建自己的客户化 Swing 组件,带有他们想设计出的任何外观和感觉。这增加了用于跨
平台应用程序和 Applet 的可靠性和一致性。一个完整应用程序的 GUI 可以在运行时刻从一种外观和感
觉切换到另一种。
Swing 的体系结构
与 AWT 比较,Swing 提供了更完整的组件,引入了许多新的特性和能力。Swing API 是围绕着实现
AWT 各个部分的 API 构筑的。这保证了所有早期的 AWT 组件仍然可以使用。AWT 采用了与特定平台
相关的实现,而绝大多数 Swing 组件却不是这样做的,因此 Swing 的外观和感觉是可客户化和可插的。
105
介绍
Java 基础类包含 5 个 API
AWT
Java2D
Accessibility
Drag & Drop
Swing
Swing 介绍
可插的外观和感觉
应用程序看上去是与平台有关的
有客户化的 Swing 组件
Swing 的体系结构
它是围绕着实现 AWT 各个部分的 API 构筑
的
大多数组件不象 AWT 那样使用与平台相关
的实现
上图显示了
JFC 各 个 部 分
之间的 相互关
系 。 Java2D ,
Accessibility
, Drag &
Drop , 和
Accessibility
API 是 AWT
和 JFC 的 一
部分, 但它们
不 属 于
Swing。这是因为,这些组件使用了一些本地代码,而 Swing 却不是这样的。
Swing 是围绕着一个称为 JComponent 的新组件构建的,而 JComponent 则由 AWT 的容器类扩展而来。
Swing 的层次结构
下图说明了 Swing 组件的层次结构:
Swing
GUI 使用两
种类型的类,
即 GUI 类
和 非 GUI
支 持 类 。
GUI 类是可
视的,它从
JComponent 继承而来,因此称为“J”类。非 GUI 类为 GUI 类提供服务,并执行关键功能;因此它们不产
生任何可视的输出。
106
注-Swing 的事件处理类是非 GUI 类的一例。
Swing 组件
Swing 组件主要为文本处理、按钮、标签、列表、pane、组合框、滚动条、滚动 pane、菜单、表格和
树提供了组件。其中一些组件如下所示:
JApplet
JButton
JComboBox JOptionPane
JList
JLabel
Swing 组件(续)
JScrollPane
JTable
JScrollBar
JSlider
JTooltip
JTree
第四节 基本的
Swing 应用程序
HelloSwing 应用程序的输出产生下图所示的窗口:
每次用户点击按钮时,标
签就会更新。
107
11.5.1 HelloSwing
1.import java.awt.*;
2.import java.awt.event.*;
3.import com.sun.java.swing.*;
4.import java.awt.accessibility.*;
5.
6.public class HelloSwing implements ActionListener {
7.private JFrame jFrame;
8.private JLabel jLabel;
9.private JPanel jPanel;
10.private JButton jButton;
11.private AccessibleContext accContext;
12.
13.private String labelPrefix =
14."Number of button clicks: ";
15.private int numClicks = 0;
16.
17.public void go() {
18.
19.// Here is how you can set up a particular
20.// lookAndFeel. Not necessary for default.
21.//
22.// try {
23.// UIManager.setLookAndFeel(
24.// UIManager.getLookAndFeel());
25.// } catch (UnsupportedLookAndFeelException e) {
26.// System.err.println("Couldn't use the " +
27.// "default look and feel " + e);
28.// }
29.
30.jFrame = new JFrame("HelloSwing");
31.jLabel = new JLabel(labelPrefix + "0");
32.
33.jButton = new JButton("I am a Swing button!");
34.
35.// Create a shortcut: make ALT-A be equivalent
36.// to pressing mouse over button.
37.jButton.setMnemonic('i');
38.
39.jButton.addActionListener(this);
40.
HelloSwing(续)
1.// Add support for accessibility.
2.accContext = jButton.getAccessibleContext();
3.accContext.setAccessibleDescription(
108
剩余63页未读,继续阅读
huan0101
- 粉丝: 4
- 资源: 7
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- 2023年中国辣条食品行业创新及消费需求洞察报告.pptx
- 2023年半导体行业20强品牌.pptx
- 2023年全球电力行业评论.pptx
- 2023年全球网络安全现状-劳动力资源和网络运营的全球发展新态势.pptx
- 毕业设计-基于单片机的液体密度检测系统设计.doc
- 家用清扫机器人设计.doc
- 基于VB+数据库SQL的教师信息管理系统设计与实现 计算机专业设计范文模板参考资料.pdf
- 官塘驿林场林防火(资源监管)“空天地人”四位一体监测系统方案.doc
- 基于专利语义表征的技术预见方法及其应用.docx
- 浅谈电子商务的现状及发展趋势学习总结.doc
- 基于单片机的智能仓库温湿度控制系统 (2).pdf
- 基于SSM框架知识产权管理系统 (2).pdf
- 9年终工作总结新年计划PPT模板.pptx
- Hytera海能达CH04L01 说明书.pdf
- 数据中心运维操作标准及流程.pdf
- 报告模板 -成本分析与报告培训之三.pptx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论2