- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《JAVA教程_Swing用户界面设计》.pdf
7 1 Swing 简介
7.1.1 简介
五讲中我们学习了AWT,AWT 是Swing 的基础。Swing 的产生主要原因就是AWT 不能
满足图形化用户界面发展的需要。
AWT 设计的初衷是支持开发小应用程序的简单用户界面。例如AWT 缺少剪贴板、打印支持、
键盘导航等特性,而且原来的AWT 甚至不包括弹出式菜单或滚动窗格等基本元素。
此外AWT 还存在着严重的缺陷,人们使AWT 应基于继承的、具有很大伸缩性的事件模
型,基于同位体的体系结构也成为其致命的弱点。
随着发展的需要,Swing 出现了,Swing 组件几乎都是轻量组件,与重量组件相比,没
有本地的对等组件,不像重量组件要在它们自己的本地不透明窗体中绘制,轻量组件在它们
的重量组件的窗口中绘制。
这一讲我们讲一下基本的Swing 组件使用方法和使用Swing 组件创建用户界面的初步方
法。
Swing 是由100%纯Java 实现的,Swing 组件是用Java 实现的轻量级( light-weight)
组件,没有本地代码,不依赖操作系统的支持,这是它与AWT 组件的最大区别。由于AWT
组件通过与具体平台相关的对等类(Peer)实现,因此Swing 比AWT 组件具有更强的实用性。
Swing 在不同的平台上表现一致,并且有能力提供本地窗口系统不支持的其它特性。
Swing 采用了一种MVC 的设计范式,即模型-视图-控制 (Model-View-Controller),
其中模型用来 存内容,视图用来显示内容,控制器用来控制用户输入。
Swing 外观感觉采用可插入的外观感觉 (Pluggable Look and Feel,PLF)
在AWT 组件中,由于控制组件外观的对等类与具体平台相关,使得AWT 组件总是只有与
本机相关的外观。Swing 使得程序在一个平台上运行时能够有不同的外观。用户可以选择自
己习惯的外观。以下三幅图是在同一个操作系统下得到不同的外观。
Metal 风格
Motif 风格
Windows 风格
7.1.2 Swing 的类层次结构
在javax.swing 包中,定义了两种类型的组件:顶层容器 (JFrame,JApplet,JDialo
g 和JWindow)和轻量级组件。Swing 组件都是AWT 的Container 类的直接子类和间接子类。
java.awt.Component
-java.awt.Container
-java.awt.Window
-java.awt.Frame-javax.swing.JFrame
-javax.Dialog-javax.swing.JDialog
-javax.swing.JWindow
-java.awt.Applet-javax.swing.JApplet
-javax.swing.Box
-javax.swing.Jcomponet
Swing 包是JFC (Java Foundation Classes)的一部分,由许多包组成,如下表:
包 描述
Com.sum.swing.plaf.motif 用户界面代表类,它们实现Motif 界面样式
Com.sum.java.swing.plaf.windows 用户界面代表类,它们实现Windows 界面样式
Javax.swing Swing 组件和使用工具
Javax.swing.border Swing 轻量组件的边框
Javax.swing.colorchooser JcolorChooser 的支持类/接口
Javax.swing.event 事件和侦听器类
Javax.swing.filechooser JFileChooser 的支持类/接口
Javax.swing.pending
文档评论(0)