【原创】一款符合当前主流审美的Swing外观(Look and Feel)_测试版发布

【前言】

      本文将展示的是一款J2SE平台Swing外观(Look and Feel)实现,目前给出的演示jar包仅供测试之用,主体工作已经完成,余下是兼容性测试和调整,附件中的演示jar包推荐运行于java_1.6_u18版本之上(其它版本尚未测试)。可以肯定的是,它至少应该运行于java_1.6_u10及以上版本(因为它用到了u10里的窗口透明特性),后绪正式版本作兼容性修改后计划可运行于Java 1.5、1.6、1.7。

      稍后将放出正式包供测试、学习、甚至商业用途。有兴趣者可加【QQ群:259448663】方便交流。

 

【关于Swing外观】

      一直以来,Java GUI的外观很难达到主流审美标准,在java1.6把开源外观Nimbus纳入java体系之前,开发人员只能在几款相当过时的方案中选择,或自行寻找第3方实现。当前的Nimbus外观虽然还算得上漂亮,但跟市面上的其它外观一样,口味还是有点重。

      因项目需要,几年前先后实现过2款深度LNF定制项目,但出于技术限制,Swing的外观从美观程度上讲很难获得突破。实现方式上讲,一个效果的实现有2种选择:要么自行Graphics.draw(..)、要么使用图片来填充,毫无疑问使用图片填充才是王道,但问题在于Swing本身没法实现矢量填充(试想,用图片来实现按钮,根据按钮的大小不同,你得准备多少张合适尺寸的图片?)。

      直至11年8月,项目需要而接触到Android开发,项目组开发完成beta版后,因界面太粗陋,一时没有合适的美工帮的上忙,只能亲自动手先折腾折腾,感叹于Android程序外观定制的方便性以及NinePatch技术的简单实用,鉴于android平台与标准java平台的渊源,遂有了NinePatch技术引入到Swing中的想法,经实验证实完全可行。于是也就有了这第3次深度开发一款Swing外观的灵感和动力,也希望对需要的人有所帮助。

      关于Swing中如何引入NinePatch技术请见我的另一篇文章:http://www.cnblogs.com/jb2011/archive/2012/05/02/2479002.html

 

【附件下载】

   1)BeautyEye外观 (beta版)完整演示程序(含运行截图)下载

    https://files.cnblogs.com/jb2011/SwingSets2_BeautyEyeLNF(jar%E5%92%8C%E6%88%AA%E5%9B%BE).rar

 

   2)jre_1.6_u18运行环境下载(需不需要下载自行选择哦):

    part1:https://files.cnblogs.com/jb2011/jre-6u18-windows-i586.part1.rar

    part2:https://files.cnblogs.com/jb2011/jre-6u18-windows-i586.part2.rar

 

   3)Sun官方Swing组件演示程序SwingSets2下载(以此为镜,方能看的见进步哦):

    https://files.cnblogs.com/jb2011/SwingSet2.rar

 

【部分截图展示】

 

 

 

 

 

posted on 2012-08-25 16:44  jb2011  阅读(9356)  评论(10编辑  收藏  举报

导航

Jack Jiang的 Mail: jb2011@163.com, 个人主页: 点此进入 , 微信: hellojackjiang