使用Swing皮肤机制 更换皮肤

转自:http://tech.ddvip.com/2009-03/1237461188111813.html

 

关键字:

  Swing 皮肤管理器 第三方皮肤库

  准备工作:

  新建一个项目,使用SWT-Designer或者Netbeans的可视化编辑器设计一个登陆窗口。

  内容:Swing允许选择程序的图形界面风格常用的有java风格,windows风格等,默认情况下是选用了java风格。

  这里我们先示例一下使用swing系统自带的皮肤:

  Java代码   

 

/**
 * 使用SWING自己代的皮肤中的WINDOWS中的皮肤
 * 请在main函数中插入该段代码
 * (注意:要将其放置在窗口定义语句的前面)
 */
 try{
     javax.swing.UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel");          
     }catch(Exception e){
            e.printStackTrace();
     }

 

  在这里,我写了一个示例程序--登陆窗口,在使用皮肤管理之前的效果如下:

使用Swing皮肤机制 更换皮肤 

  我们切换成windows皮肤后的效果图:

使用Swing皮肤机制 更换皮肤 

  利用Swing的LookAndFeel也可以实现时下流行的换肤功能。

  还是先看一张效果图:

使用Swing皮肤机制 更换皮肤 

  我们对上述窗口应用了mac主题元素。

  Java代码  

 

UIManager.setLookAndFeel("com.birosoft.liquid.LiquidLookAndFeel");
LiquidLookAndFeel.setLiquidDecorations(true, "mac");

 

  我们要实现上述效果,只需在窗口启动函数之前添加该代码即可。liquid主题包里还有其他的设置,提供了两套主题,将上面代码中的mac参数去掉,即:

  Java代码  

 

UIManager.setLookAndFeel("com.birosoft.liquid.LiquidLookAndFeel");
LiquidLookAndFeel.setLiquidDecorations(true);

 

  这就使用了liquid另一套皮肤,也是默认的皮肤。

  关于liquid更多详细资料,请参阅该站点:

  https://liquidlnf.dev.java.net/

  其实Java世界里还有很多的皮肤包,在这里不一一介绍了,更多皮肤,请参阅该站点:

  http://www.open-open.com/61.htm

你可能感兴趣的:(swing)