Java Swing窗体JFrame之窗体美化-窗体及组件外观设置

可通过设置Swing的主题使窗体及控件达到部分美化的效果,当然也可以通过自定义控件或者自制UI的方式美化控件及窗体外观。这里只介绍Swing主题设置的几种方式。

一、Java Swing自带主题

Java中的几种LookandFeel(此部分代码在main方法打开GUI界面之前实现)

Metal风格(默认)

String lookAndFeel ="javax.swing.plaf.metal.MetalLookAndFeel";

UIManager.setLookAndFeel(lookAndFeel);

Windows风格

String lookAndFeel ="com.sun.java.swing.plaf.windows.WindowsLookAndFeel";

UIManager.setLookAndFeel(lookAndFeel);

Windows Classic风格

String lookAndFeel ="com.sun.java.swing.plaf.windows.WindowsClassicLookAndFeel";

UIManager.setLookAndFeel(lookAndFeel);

Motif风格

String lookAndFeel ="com.sun.java.swing.plaf.motif.MotifLookAndFeel";

UIManager.setLookAndFeel(lookAndFeel);

Mac风格 (需要在相关的操作系统上方可实现)

String lookAndFeel ="com.sun.java.swing.plaf.mac.MacLookAndFeel";

UIManager.setLookAndFeel(lookAndFeel);

GTK风格 (需要在相关的操作系统上方可实现)

String lookAndFeel ="com.sun.java.swing.plaf.gtk.GTKLookAndFeel";

UIManager.setLookAndFeel(lookAndFeel);

可跨平台的默认风格

String lookAndFeel =UIManager.getCrossPlatformLookAndFeelClassName();

UIManager.setLookAndFeel(lookAndFeel);

当前系统的风格

String lookAndFeel =UIManager.getSystemLookAndFeelClassName();

UIManager.setLookAndFeel(lookAndFeel);

二、JTattoo.jar主题

JTattoo由几种不同的Swing应用程序外观组成。使开发人员能够通过优秀的用户界面改进他们的应用程序。JTattoo为那些不喜欢标准JDK外观的用户打开了桌面应用程序的大门。

1)下载地址:

http://www.jtattoo.net/Download.html

https://mvnrepository.com/artifact/com.jtattoo/JTattoo

2)使用方法:

try {

    JFrame.setDefaultLookAndFeelDecorated(true);

    UIManager.setLookAndFeel("com.jtattoo.plaf.aero.AeroLookAndFeel");

} catch (Exception e) {

    e.printStackTrace();

}

3)常用皮肤:

com.jtattoo.plaf.noire.NoireLookAndFeel  柔和黑

com.jtattoo.plaf.smart.SmartLookAndFeel  木质感+xp风格

com.jtattoo.plaf.mint.MintLookAndFeel    椭圆按钮+黄色按钮背景

com.jtattoo.plaf.mcwin.McWinLookAndFeel  椭圆按钮+绿色按钮背景

com.jtattoo.plaf.luna.LunaLookAndFeel    纯XP风格

com.jtattoo.plaf.hifi.HiFiLookAndFeel    黑色风格

com.jtattoo.plaf.fast.FastLookAndFeel    普通swing风格+蓝色边框

com.jtattoo.plaf.bernstein.BernsteinLookAndFeel  黄色风格

com.jtattoo.plaf.aluminium.AluminiumLookAndFeel  椭圆按钮+翠绿色按钮背景+金属质感

com.jtattoo.plaf.aero.AeroLookAndFeel    xp清新风格

com.jtattoo.plaf.acryl.AcrylLookAndFeel  布质感+swing纯风格

com.jtattoo.plaf.graphite.GraphiteLookAndFeel

com.jtattoo.plaf.texture.TextureLookAndFeel

三、substance-6.0.jar主题

1)依赖库

laf-plugin-7.2.jar

http://www.java2s.com/Code/Jar/l/Downloadlafplugin72jar.htm

laf-widget-7.0.jar

http://www.java2s.com/Code/Jar/l/Downloadlafplugin72jar.htm

trident-7.0.jar

http://www.java2s.com/Code/Jar/l/Downloadlafplugin72jar.htm

2)使用方法:

这是因为Swing本身的线程不安全所致,swing界面刷新线程必须在由EDT分配,可以在SwingUtilities.invokeLater(()->{refreshCode});

JFrame.setDefaultLookAndFeelDecorated(true);

JDialog.setDefaultLookAndFeelDecorated(true);

SwingUtilities.invokeLater(new Runnable() {

    public void run() {

       try {

       UIManager.setLookAndFeel("org.pushingpixels.substance.api.skin.SubstanceOfficeBlue2007LookAndFeel");

       } catch (Exception e) {

           e.printStackTrace();

       }

       //new窗体代码

    }

});

3常用皮肤:

org.pushingpixels.substance.api.skin.SubstanceAutumnLookAndFeel

org.pushingpixels.substance.api.skin.SubstanceBusinessBlackSteelLookAndFeel

org.pushingpixels.substance.api.skin.SubstanceBusinessBlueSteelLookAndFeel

org.pushingpixels.substance.api.skin.SubstanceBusinessLookAndFeel

org.pushingpixels.substance.api.skin.SubstanceChallengerDeepLookAndFeel

org.pushingpixels.substance.api.skin.SubstanceCremeCoffeeLookAndFeel

org.pushingpixels.substance.api.skin.SubstanceCremeLookAndFeel

org.pushingpixels.substance.api.skin.SubstanceDustCoffeeLookAndFeel

org.pushingpixels.substance.api.skin.SubstanceDustLookAndFeel

org.pushingpixels.substance.api.skin.SubstanceEmeraldDuskLookAndFeel

org.pushingpixels.substance.api.skin.SubstanceGeminiLookAndFeel.class

org.pushingpixels.substance.api.skin.SubstanceGraphiteAquaLookAndFeel

org.pushingpixels.substance.api.skin.SubstanceGraphiteGlassLookAndFeel

org.pushingpixels.substance.api.skin.SubstanceGraphiteLookAndFeel

org.pushingpixels.substance.api.skin.SubstanceMagellanLookAndFeel

org.pushingpixels.substance.api.skin.SubstanceMistAquaLookAndFeel

org.pushingpixels.substance.api.skin.SubstanceMistSilverLookAndFeel

org.pushingpixels.substance.api.skin.SubstanceModerateLookAndFeel

org.pushingpixels.substance.api.skin.SubstanceNebulaBrickWallLookAndFeel

org.pushingpixels.substance.api.skin.SubstanceNebulaLookAndFeel

org.pushingpixels.substance.api.skin.SubstanceOfficeBlue2007LookAndFeel

org.pushingpixels.substance.api.skin.SubstanceOfficeSilver2007LookAndFeel

org.pushingpixels.substance.api.skin.SubstanceRavenLookAndFeel

org.pushingpixels.substance.api.skin.SubstanceSaharaLookAndFeel

org.pushingpixels.substance.api.skin.SubstanceTwilightLookAndFeel

  • 17
    点赞
  • 108
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值