----------------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为界面更换皮肤的更多相关文章

  1. WPF通过DynamicResource实现给界面动态更换皮肤

    在我们的程序中有时候需要去实现动态更换皮肤的效果,从而完成一些个性化的设置,那么我们究竟怎样去实现动态换皮肤的效果呢?那么我们经常用到的就是设置不同的Style,并且在主程序的xaml文件中通过Dyn ...

  2. 为Visual Studio更换皮肤和背景图

    最近在博客上别人在老早之前就有加了背景图,想想怎么能这么out,于是乎,百度一下,能否知道? 咳咳,资源还是有滴!可惜都是比较旧的跟新版本的配置方法可能有点不一样, 可能会有很多人会觉得不适应,不过没 ...

  3. WinForm 使用皮肤,且单击按更换皮肤。

    运行效果: 首先把DLL程序集文件和SSK皮肤文件放在要运行程序的DEBug文件夹下,然后引入引用. 之后可以在程序里写代码了. private void Form2_Load(object send ...

  4. vue-基于elementui自定义主题更换皮肤及自定义内容的皮肤跟换

    参考这篇博客https://blog.csdn.net/young_Emily/article/details/78591261做一遍,加上自己的一些理解 思路:通过自己上一篇博客https://ww ...

  5. 给Visual Studio更换皮肤和背景图

    1.先安装更换皮肤的插件 VS菜单栏里面找到:工具>扩展和更新>联机>搜索: Theme Editor 下载并安装: 安装后先不着急重启VS 然后,安装可更改背景图片的插件:工具&g ...

  6. java 24 - 9 GUI 之 给窗体换图标、设置启动在屏幕中间、更换皮肤

    A.首先更改窗体左上角的图片 步骤一: 创建3个包,分别建立1个类 第一个是窗体的包,窗体类:设置窗体的主要布置和功能 第二个是资源包,图片:把想要改的图案拉进来 第三个是UI界面包,UI界面设计类: ...

  7. XtraForm中更换皮肤

    前提: 默认皮肤的显示http://www.cnblogs.com/chucklu/p/4785572.html 1.修改XtraForm的LookAndFeel的SkinName属性,设置为Cara ...

  8. Vistual Studio 2012更换皮肤

    早就装上VS2012了,可是除了在家里练习玩玩的时候使用外,在公司都还在用2010,也没好好研究过2012.这两天把公司的电脑换了系统,也就把vs换成了2012.可是看着不是白白的皮肤就是深色的皮肤, ...

  9. winfroms更换皮肤

    一.添加控件lrisSkin.dll 然后把继承的窗体更换成别人做好的窗体类 能达到换肤的效果     二. 全部源代码就一行: skinEngine1.SkinFile = "WaveCo ...

随机推荐

  1. Ruby 循环

    Ruby while 语句: 语法: while conditional [do] codeend 执行代码当条件为true时.while循环的条件是代码中的保留字,换行,反斜杠()或一个分号隔开. ...

  2. Python 变量(赋值,数据类型,数据类型转换)

    一.python 变量赋值方式有三种: 1.直接赋值:age = 28 2.多个变量赋值 age, sex = 28, 1  #每个变量都必须要有个对应的值 3.特殊形式的赋值(链式赋值)  a = ...

  3. Delphi 的类型与指针

    Delphi 的指针分为 "类型指针" 和 "无类型指针" 两类.Delphi 中的类型, 常用的也得有几百个, 我们可以给每种类型定义相应的类型指针.其实 D ...

  4. 汇编语言入门(在debug中编辑和调试程序)

    2013-06-02 17:09 4252人阅读 评论(2) 收藏 举报  分类: 汇编语言(1)  版权声明:本文为博主原创文章,未经博主允许不得转载. 我们在Windows中进入的Dos方式,实际 ...

  5. CSS整体布局

    主要内容: 一.外边距margin与填充padding 二.浮动float与显示display 三.主布局 四.定位方式posotion 一.外边距margin与填充padding 1.margin设 ...

  6. 剑指offer之 奇数偶数数组位置调整且保存顺序不变

    public class Solution { public void reOrderArray(int [] array) { reOrderCore(array,array.length); } ...

  7. 编码,charset,乱码,unicode,utf-8与net简单释义

    1.文件分为文本文件和二进制文件﹐不过本质都一样﹐都是些01. 2.计算机存储设备存储的0或1﹐称为计算机的一个二进制位(bit). 3.二进制文件的0和1有专门的应用程序来读﹐所以它们没有什么乱不乱 ...

  8. XShell 连接虚拟机中的服务器 失败 、连接中断(Connection closed by foreign host.)

    在使用XShell连接虚拟机中的服务器时,报以下错误并断开连接,之前连接还是挺稳定的,忽然就这样了 Last login: Thu Aug :: from 192.168.1.102 [root@no ...

  9. 在cmd中将FAT32转换为NTFS分区的命令是什么?

    将FAT32转换为NTFS分区的命令是什么? ========================================== 在cmd命令行模式下输入: convert x: /fs:ntfs ...

  10. jQuery 开发一个简易插件

    jQuery 开发一个简易插件 //主要内容 $.changeCss = function(options){ var defaults = { color:'blue', ele:'text', f ...