swing组件:高级Swing组件makeover的 3要素

        收到个朋友邮件说如何在Swing中实现组件动画效果就像JIDE那些组件确Swing框架灵活性和可扩展性使得它非常适合做这样Makeover工作我简单整理总结了以下这种组件不外乎要有以下 3种元素:   1.外观华丽这包括使用渐变色线条和字体反走样图标设计漂亮抢眼界面变化要柔和等等但要避免设计太花哨给人华而不实感觉原则上避免颜色太碎图标应以简洁为主不可滥用图片等技术上没有多大要求主要是美工你需要掌握各种做图工具自己最好有好审美和设计能力

  2.动画效果组件行为变化要柔和化尽量使用动画效果如淡入淡出、滚动弹出等等技术上最常用思路方法是使用javax.swing.Timer为什么要使用javax.swing.Timer这是javax.swing.Timer触发事件都在EDT上执行是线程安全除此外还需掌握Java 2D常用接口及图像处理常见窍门技巧

  3.空间布局这种组件空间布局特点是立体、动态、拖拽式这和人认知能力有关人类认知特点是具体到抽象 2维、静态和键盘式操作对普通用户来说太过抽象和专业化需要辅助学习才能理解而 3维、动态、拖拽式操作更贴近于感性认知范畴因此这类组件经常有浮动式窗口、组件布局动态变化及拖拽式操作等特征实现技术包括布局管理器(LayoutManager)、Swing组件分层结构、Swing事件体系结构以及DnD接口等

  美工对于java员来说可能比较缺乏但是华丽外观不仅仅是美工技术这包括些宏观设计原则java员完全可以通过掌握这些方针原则来提高自己设计水平前面文章介绍那个Swing外观设计方针就是本这样至于美工我觉得如果你有美术天分那就要充分利用;如果没有那么你可以模仿熟悉几种图形工具就完全可以不用自己画图做出比较漂亮图标、图片(当然没有考虑版权问题)我就是后者但是我发现我平时只需要PrScrn键(抓图)、Pa(Windows 画图工具切图、剪裁、转换格式)、PowerPo/OpenOffice Imprise(画图)、Google Image(搜索图片)就已经足够了其他所需技术就需要你掌握Swing和Java 2D方方面面技术了当然复杂组件不仅仅是靠掌握这些技术能解决可能你还需要能比较好地熟悉各种编程模式

  这个朋友特别提到Windows上折叠式操作面板他说:

  另外我对JIDE中两个东西很感兴趣个是CollapsiblePanel(Windows Explorer左边常见任务)点击后折叠、展开子面板而且是动画效果

  

  因此昨晚就特地试了虽然以前就大概明白使用Timer和布局管理器以及图像处理就可以实现这些东西直没有做昨晚实验还是很成功大概花了两个小时就实现了这个面板工作过程大概就是分解这些面板组件、解析那部分需要动画、应该在哪儿触发何种事件另外就是编写这些组件不断调试这个过程大部分时间都被效果调整占去了你需要不断运行抓取屏幕然后将它帖到Pa然后放大然后和Windows上抓图比较包括大小、尺寸、颜色、字体、微观变化等等最后算是基本实现了Windows这个折叠式面板组件下面是我演示个抓图:

  

 


="xspace-totlerecord">2="xspace-totlepages">1/2="xspace-current">12>
Tags:  色彩三要素 议论文三要素 makeover swing组件

延伸阅读

最新评论

发表评论