>>  就业明星
>>  就业感想
>>  招聘信息
>>  学习心得
>>  职场指导
>>  就业喜讯
>>  学习方法



  
 
所在位置:石家庄动漫软件职业技术学校 >> 就业明星 >> 学习心得
校区老师教你如何区分Blind和Shutter
作者: 来源: 点击数:1698 更新时间:2011-12-22 16:06:13   

    清美教育河北盛邦校区老师解读:在JAVA教学过程中,总结出Blind和Shutter的异同点,希望对学生们的学习带来一些帮助。
    1、两者都是MVC的模式,但是Shutter的model是二维数组,Blind的model是树型的,它和JFace的TreeViewer是类似的。
    2、两者都是一些常见组件和自定义组件的合成,Shutter用了CoolButton和ScrollList。Blind用了Slat和QTree。实际上Slat是CoolButton的精简版本,区别只是名字不同,并且Blind在这方面比Shutter灵活,因为Shutter的内容区域只能是ScrollList,Blind的内容区可以是Composite。
    3、由于Shutter没有Item的概念,Blind参照了TreeViewer的实现,使用了Item来对应model,也就是在QTree中使用了自定义的Item对象QItem。
    4、Shutter把model直接映射为一个CoolButton,所以好友一多,效率相对就低,QTree则是纯绘制的。所以看SWT的相关代码,设计出QTree的重绘算法。在绘画事件的时候,QTree会检查哪些Item需要重画,然后把绘画事件转发给QItem,由QItem自己来重绘自己,所以Blind的速度自然就会变快。
    5、在布局上,Shutter使用的是自定义的SortLayout,Blind用的是SWT自带的GridLayout, GridData有一个exclude属性,Blind就利用这个实现内容区的显示和隐藏。
    6、头像的跳动和闪烁这样的功能,CoolButton和QTree都有,但是QTree更灵活一些,QTree的动画实现很简单,用一个列表保存哪些Item正在显示动画,然后在重画的时候就画下一帧就可以了。不过下一帧到底画什么是可以自定义的,可以通过实现IEffect接口来自定义动画方式,所以说QTree比CoolButton灵活一些。
    7、由于Blind是树型的,所以还考虑了最大层数,每层的缩进量,每层的图标大小等功能。


     

      友情提示:如果您正在为就业难而烦恼,如果您想跳槽转行而不知该如何决择,如果您因激烈的职业竞争而想充电学习,请点击在线客服,或者拨打0311—87162121 87162112我们会有专业的职业规划老师为您解除困惑!

上一篇:Java String常用方法详解
下一篇:电脑如何连接各种外部设备
[在线报名] [打印此文] [关闭窗口]
版权所有 石家庄清美动漫软件职业技术学校
传真:0311-87162110-8010 邮箱:hbbeneter@sina.com 冀ICP备16001955号-2
校址:石家庄市建设北大街东海国际 电话:400-800-5730 0311-87162121 87612112