Swing框架_原创精品文档.pdfVIP

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

Swing框架--第1页

Swing框架中是指Component,Model,UIdelegate个Renderer。

Swing直接调用Java2D来实现组件的绘制!这与AWT或者SWT都是不同的。

当然swing是建立在AWT基础之上的,比如一些等层容器都是直接使用AWT实现的,

Java2DAPI是平台独立的。

Swing模型和渲染器

Swing使用的是变体的MVC架构,即Model-Component-UIDelegate。

尽量使用批处理操作,尽量减少触发事件的数量!

当初始化或者需要完全替换模型的内容时,考虑重新生成模型,不要使用已经存在的

型,已存在模型上已经保持了很多的侦听器,新生成的模型没有侦听器,这样避免了

不必要

的处理函数的调用。

触发事件数量严重影响你的程序启动时间,也会影响打开对话框和相似操作的时间。

Swing框架之Component

Swing的基础体系结构中的四大基本对象Component、Model、UIDelegate以及

Renderer都值得详细解释。Swing的树状组件结构(虽然这是用户界面工具通有的特

征)也值得详细解释,因为这是完成某些复杂Swing组件,尤其像JTable、

JTree、JList和JComboBox这种

复杂组件中编辑功能得关键。此外,Swing/AWT的事件模型如EventDispatching

和Propagation和事件处理线程模型也需要详细解释,理解这部份是编写高效率

Swing界面的

关键。

Component在Swing的MVC模型中担任Controller的角色,同时它也是

SwingAPI中代表具体组件的对象。

Component在Swing中对外负责提供API接口,对内负责协调控制Model和UI

Delegate(有时可能还包括Renderer)的操作,可以说是整个Swing结构的中心

角色。

Swing框架--第1页

Swing框架--第2页

总的来说自定义组件需要完成两样基本任务:第一侦听并处理低层事件,根据

具体情况改变组件状态,如需要还要发出高级事件;第二,根据当前组件的

状态画出当前组件的外观。

Swing组件的paint方法是内部接口方法,一般用户不要直接调用这个方法,它总是

事件调度线程中调用。一般说来除了系统刷新事件触发这个方法,Component的

repaint也

触发这个方法的调用。repaint方法常用于当组件状态发生变化时刷新界面使用。

repaint方法是Swing中少数几个线程安全的方法,可以在任何线程中调用它。它

的原理是往事件队列中post一个PAINT事件。由于事件队列的事件是被事件调度线

程同步执行的,所以这个方法总是线程安全的。

事件调度线程在应用程序事件处理函数actionPerformed没有完成之前是不能处理下

一个事件的,如果应用程序处理函数是一个时间复杂的任务(比如查询数据库并将结

果显示到表格中),后面包括PAINT事件将在长时间内得不到执行。

SwingcomponentsshouldbeaccessedontheEventDispatchThreadonly.

Swing组件只能

文档评论(0)

190****7247 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档