首页 > 代码库 > 使用LookAndFeel为界面更换皮肤

使用LookAndFeel为界面更换皮肤

----------------siwuxie095

   

   

   

   

   

   

   

在 Windows 系统中,默认的 Java 运行环境(JRE)会为当前的窗体程序

指定一个 LookAndFeel(默认使用 <system>,仅应用于 预览)

   

「这里的 <system> 即 Windows」

   

技术分享

   

   

   

共有 5 种 LookAndFeel:

Metal、Nimbus、CDE/Motif、Windows、Windows Classic

   

「Nimbus 在 Java 6 Update 10 及以后才有,当前为 JDK 8u111」

   

技术分享

   

   

   

   

   

   

创建一个 JFrame 窗体,如下:

   

技术分享

   

   

   

如果点击 预览 按钮:

   

技术分享

   

   

   

此时,使用的是 Windows 自带的样式(这里是 win 10 系统):

   

「在 预览 中,是原生的 Windows 窗体和控件」

   

技术分享

   

   

   

但如果点击 运行 按钮,样式就发生了变化(Metal 样式):

   

技术分享

   

   

显然,WindowBuilder 仅仅为 预览 应用了默认的 LookAndFeel

   

   

「除了苹果系统,其他的系统中,只要 Java 运行环境中有窗体打开(运行),

默认使用的都是 Metal 这个 LookAndFeel」

   

   

需要通过代码来设定窗体的样式,如:Nimbus

   

技术分享

   

   

运行程序:

   

技术分享

   

   

   

   

5 种 LookAndFeel 的设定方法:

   

技术分享

   

   

   

   

也可以使用第三方的 LookAndFeel 的库:

https://github.com/search?utf8=%E2%9C%93&q=LookAndFeel&type=

   

按照一般的第三方库文件的使用方法来使用即可

   

   

   

LookAndFeel 也可以针对不同形式的窗体分别设定

   

如:在当前 JFrame 的 LookAndFeel 生效前创建另一个 JDialog

   

   

   

如果为当前的程序指定了 LookAndFeel,所有控件都是按照 LookAndFeel

指定的方法来绘制的,不管迁移到任何系统上,外观和样式都不会发生改变,

这也是 Java 跨平台特性的体现

   

   

   

   

   

【made by siwuxie095】

使用LookAndFeel为界面更换皮肤