- 1、本文档共4页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
一种新型的vc组件
0开发工具包
sw8是sun发布的第二个开发团队,用于开发java应用程序界面。它以抽象窗口工具包(AWT)为基础使跨平台应用程序可以使用任何可插拔的外观风格。Swing开发人员只用很少的代码就可以利用Swing丰富、灵活的功能和模块化组件来创建优雅的用户界面。
1服装结构及其特点
1.1平台的底层实现
AWT采用了一种称为PeerModel的两层结构,每一个AWT组件都包装了一个与本地系统相关的Peer类,该类负责组件外观的最终实现,所以AWT组件自动具有本地窗口系统的特征。这种结构虽然解决了组件的可移植性,但却存在一些限制:由于不同窗口系统的描绘机制、事件处理存在较大差别,使得本地Peer类实现较为复杂,而且同一应用程序界面在不同的平台上会产生较大差异。由于采用PeerModel,AWT组件需要在一个本地窗口上进行描绘,占用较多的系统资源,因此比较笨重(Heavyweight)。鉴于此,Swing组件采用了全新的底层实现:LightweightUIFramework。该架构是完全由Java实现,不依赖于任何本地代码,从而避免了组件外观和行为(Look—and—Fee1)在不同平台上的差异,使得同一应用程序在所有平台上都具有一致的表现形式。与AWT相比,这种组件占用更少的系统资源,具有更好的性能,故被称为轻型的组件。
1.2swing组件
MVC(Model—View—Controller)是由SmallTalk提出的一种著名的GUI设计思想。它将GUI组件分成3个部分:数据模型(Mode1),包含组件所使用或管理的数据;视图(View),即组件在屏幕上的表现形式;控制器(Controller),描述组件如何响应用户的动作,即事件的处理。在MVC模式中,Model处于核心地位,并且每个组件只能有一个Model,但可以对应多个View,即每个组件可以有多种不同的表现形式。这种概念模型简单清晰,但Swing开发小组在实际设计过程中发现:组件的Controller与View通常要紧密耦合,而在经典的MVC模中,Controller与View是相互独立的。为此,Swing组件采用了一种改良的MVC模型,Swing组件把它们的界面样式(LookandFee1)交给了UI代表来处理,它对应着MVC模型中的视图,控制器的组合。依据此模型,每个Swing组件通常由如下3部分组成:(1)一个维护组件的数据模型(M)。(2)UI代表,一个带事件监听器的视图腔制器。(3)继承JComponent的组件类,JComponent类是所有Swing组件的祖先类。例如Swing中的按钮组件由JButton类、ButtonUI类、ButtonModel类组成。
2动态模具的实现
在讨论Swing组件之前,首先介绍一下Java的布局管理器。与VisualBasic不同,JDK没有表单设计器,需要通过编写代码来定制(布局)用户界面组件所在的位置。
当然如果有支持Java的开发环境,就可能存在某种布局工具部分自动地或全部自动地完成这些布局任务。然而,确切地了解低层的实现方式是非常重要的,因为即使最好的工具有时也需要手工编码。
Java用一个非常出色的概念实现动态模具:容器内的所有组件都由一个布局管理器(layoutmanager)进行定位。流布局管理器(flowlayoutmanager)是面板默认的布局管理器。
流布局管理器的特点是在一行水平排列组件,知道没有足够的空间位置,这是开始新的一行。
当用户缩放容器时,布局管理器自动地调整组件的位置使其填充可用的空间。
还可以选择在每一行上排列组件的方案。默认方式是居中显示。流布局管理器也是通过构造器来创建的。流布局是通过FlowLayout类来创建,FlowLayout类具有三种构造器。首先是无参构造器,使用无参构造器能够创建一个默认的以居中对齐方式,控件间水平和垂直间距为5个像素的流布局。
2.1创建网格布局器
网格布局也是通过GridLayout类来创建的。GridLayout类具有三个构造器,使用无参构造器将创建具有默认行和默认列的网格布局。在创建网格布局管理器时最常用的就是具有两个整形参数的构造器,第一个参数是表示网格布局管理器的行数,第二个参数表示网格布局管理器的列数。还有一个带有4个参数的构造器,除了可以定义行列数外,还可以定义控件时间水平间距和垂直节间距。
2.2防止空间不能完全显示
边框布局和上面讨论的2种布局存在着很大的不同。在使用边
您可能关注的文档
- 2017年某市石材行业职业卫生状况调查.docx
- 2018年我国股市分析报告.docx
- vas结合自体血回输治疗自发性血胸、血气胸25例.docx
- 《伤寒杂病论》脏腑经络均病论篇名探析.docx
- 《劳动合同法》对劳务派遣管理的完善.docx
- 《周语》《鲁语》校释商榷三则.docx
- 一种多目标适应的网构软件情境感知体系架构.docx
- 一起长江口事故引起事故事故的调查.docx
- 三七总皂苷脂质体的制备及其生理适应性考察.docx
- 中德现代农业示范农场项目简介.docx
- 【重庆市S街道家庭医生签约服务现状调研分析报告6000字】.docx
- 八年级生物下册教学课件《选择健康的生活方式》.pptx
- 高中高考思想政治一轮总复习课后习题 选择性必修一 当代国际政治与经济 课时规范练30 和平与发展 (2).doc
- 企业社保费申报流程(核定版).docx
- 高中高考思想政治一轮总复习课后习题 选择性必修一 当代国际政治与经济 课时规范练31 中国的外交 (2).doc
- 高中思想政治选择性必修1当代国际政治与经济课后习题 第1单元 各具特色的国家 第一单元过关检测.doc
- 第6章 生物的进化B卷 能力提升—高一生物学人教版(2019)必修二单元达标测试卷.docx
- 高中思想政治选择性必修1当代国际政治与经济课后习题 第2单元 世界多极化 第4课 和平与发展 第2框 挑战与应对 (2).doc
- 高中思想政治选择性必修1当代国际政治与经济课后习题 第3单元 经济全球化 第6课 走进经济全球化 第2框 日益开放的世界经济.doc
- 【泰安交通建设集团人力资源管理模式研究4900字】.doc
文档评论(0)