- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第12章 基于Swing的GUI开发 Swing概述 基于Swing的应用程序 Swing组件 中基于Swing的用户界面 12.1 Swing概述 Swing是由纯Java实现的,Swing组件是用 Java实现的轻量级( light-weight)组件,没有本地 代码,不依赖操作系统的支持,这是它与AWT组件的 最大区别。由于AWT组件通过与具体平台相关的对等 类(Peer)实现,因此Swing比AWT组件具有更强的 实用性。Swing在不同的平台上表现一致,并且有能 力提供本地窗口系统不支持的其它特性。 Swing的特性 组件的多样化 Swing是AWT的扩展,它提供了许多新的图形界面 组件。Swing组件以“J”开头,除了有与AWT类似的 按钮(JButton)、标签(JLabel)、复选框 (JCheckBox)、菜单(JMenu)等基本组件外,还 增加了一个丰富的高层组件集合,如表格(JTable)、 树(JTree)。 采用分离模型结构(Separable Model Architecture) Swing中采用分离模型:将组件分为组件显示和数据模 型(View和Model)。 MVC是现有的编程语言中制作图形用户界面的一种通 用的思想,其思路是把数据的内容本身和显示方式分 离开,这样就使得数据的显示更加灵活多样。比如, 某年级各个班级的学生人数是数据,则显示方式是多 种多样的,可以采用柱状图显示,也可以采用饼图显 示,也可以采用直接的数据输出。因此在设计的时候, 就考虑把数据和显示方式分开,对于实现多种多样的 显示是非常有帮助的。 MVC模型的三要素: Model 是程序所操纵数据的逻辑结构。 View 是数据的可视化表示 Controller 是控制和执行对用户操作的响应。 MVC三个要素相互独立又相互关联。 Swing中由View(包含了View和Conftoller)和 Model组成,两者之间密不可分。 可设置的组件外观感觉(Look and Feel LF) Swing的外观采用可设置的外观感觉。 支持高级访问方式 所有组件均实现了Accessible接口 支持键盘代替鼠标的操作 设置边框 使用图标 许多Swing组件除了用文字还可以用图标对组件进行 修饰。 Swing组件类层次 Swing组件是Jcomponent 类的子类, Jcomponent 类是从AWT的容器类派生的子类。 Swing组件类的层次图 java.lang.Object | +--java.awt.Component | +--java.awt.Container | +-- javax.swing.Jcomponent Swing包是JFC(Java Foundation Classes)的一部分,由 许多包组成。 swing包是Swing提供的最大包,它包含将近100个类 和25个接口,几乎所有的Swing组件都在swing包中, 只有JtableHeader 和JtextComponent 是例外, 它们分别在swing.table和swing.text中。swing.border包中定义了事件和事件监听器类,与 AWT的event包类似。它们都包括事件类和监听器接 口。 swing.pending包包含了没有完全实现的Swing组件 swing.table包中主要包括了表格组建(Jtable)的支持类。 swing.tree同样是JTree的支持类。 swing.text swing.text.htmlswing.text.html.parser 和swing.text.rtf都是用于显示和编辑文档的包。 12.2 基于Swing的应用程序 例题:12-1 Jframe 的一个简单例子 Swing的程序设计一般可按照下列流程进行: 引入Swing包 import javax.swing.* ; import java.awt.* import java.awt.event.* 选择“外观和感觉” 设置顶层容器 设置按钮和标签 向容器中添加组件 在组件周围添加边界 进行事件处理 例题12-2显示一个按钮并显示按钮的单击次数。 二、设置LF Swing目前支持跨平台的Java LF也称为Metal LF 当前运行平台的LF有Windows和Motif LF。从Jd
文档评论(0)