zoukankan      html  css  js  c++  java
  • 【Java Swing】界面主题设置

    在Java中让用户能够动态地更改应用的外观主题,可以给用户更好地体验,具体的实现方式是:

    1,先使用UIManager.setLookAndFeel(String s)方法设定对应的外观

    2,再使用SwingUtilities.updateComponentTreeUI(Component c)方法立刻更新应用


    JDK默认仅包含了基本的几种风格

    // Metal风格 (默认)
    String lookAndFeel = "javax.swing.plaf.metal.MetalLookAndFeel";
    UIManager.setLookAndFee(lookAndFeel);
    
    // Windows风格
    String lookAndFeel = "com.sun.java.swing.plaf.windows.WindowsLookAndFeel";
    UIManager.setLookAndFee(lookAndFeel);  
    
    // Windows Classic风格
    String lookAndFeel = "com.sun.java.swing.plaf.windows.WindowsClassicLookAndFeel";
    UIManager.setLookAndFee(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);

    三方的lookAndFeel

    ########## 优选 ##########

    • Weblaf:非常赞的套件,界面现代、简约。依赖包较少。 有开源也有商业协议,个人最喜欢的皮肤。

               https://github.com/mgarin/weblaf

    • PgsLookAndFeel:界面简约现代,Apache2开源协议

               http://www.pagosoft.com/projects/pgslookandfeel/

    • Seaglass:蛮美观的UI,界面现代,是基于Java 7自带皮肤Nimbus改进

              https://github.com/khuxtable/seaglass/wiki

    • beautyeye:国人开发的UI,界面现代

              https://github.com/JackJiang2011/beautyeye

    ########## 中选 ##########

    •  Synthetica:较丰富的UI风格,但对中文字体的支持有问题。一半的皮肤免费,但其中一些较美观的需要商业授权

               http://www.javasoft.de/synthetica/themes/

    • Jtattoo:分GPL / LGPL / Apache三种协议,有开源也有商业版,个人较喜欢其中的Luna风格(提供直观显示其各种主题的效果,同时推荐下载其源码学习各种控件的使用方法

               http://www.jtattoo.net/

    ----- 参考附件

    • Insubstantial:substance项目的分支项目 

              https://github.com/Insubstantial/insubstantial

    • Nimbus:Java SE 6 Update 10以后Oracle内置的皮肤,如果想安全稳定,选它没错了 

              http://docs.oracle.com/javase/tutorial/uiswing/lookandfeel/nimbus.html


    ########## 其他 ##########

    • Quaqua:整的很像MAC OS的界面

              http://www.randelshofer.ch/quaqua/index.html

    • Alloy:商业的,感觉一般

              http://lookandfeel.incors.com/

    • JGoodies:商业的,感觉更一般

              http://www.jgoodies.com/products/swing-suite/

  • 相关阅读:
    c#数据类型
    遮罩层
    图片轮播
    js 获取浏览器高度和宽度值
    bootstrap、jquery
    洛谷P1442 铁球落地 题解
    HDU3016 Man Down 题解
    POJ2892 Tunnel Warfare 题解
    HDU2795 Billboard 题解
    CF920F SUM and REPLACE 题解
  • 原文地址:https://www.cnblogs.com/clarino/p/8668160.html
Copyright © 2011-2022 走看看