如何安装/配置自定义Java外观?

时间:2012-02-03 02:40:33

标签: java swing properties installation look-and-feel

我正在尝试安装Sea Glass Look and Feel。我想使用属性文件安装/配置LaF,但是概述此过程的教程非常混乱。

话虽如此,任何人都可以提供有关使用属性文件安装/配置自定义LaF的简单分步指南吗?

3 个答案:

答案 0 :(得分:6)

来自他们的网站:

要使用Sea Glass外观,您必须在pom.xml文件中包含our Maven repository或下载jar文件并将其包含在类路径中。有关详细信息,请参阅下载页面。

要启用Sea Glass外观,请在创建任何控件之前在应用程序中包含以下内容:

try {
    UIManager.setLookAndFeel("com.seaglasslookandfeel.SeaGlassLookAndFeel");
} catch (Exception e) {
    e.printStackTrace();
}

我们还支持使用VM选项

在命令行上设置用户界面
-Dswing.defaultlaf=com.seaglasslookandfeel.SeaGlassLookAndFeel

答案 1 :(得分:3)

以下是使用jar文件安装Sea Glass L& F的步骤(请注意,我使用eclipse,因此说明将在eclipse中)

  1. Download他们的Maven存储库中的LaF jar文件。
  2. 将.jar文件放在项目的指定文件夹中
  3. 在eclipse中右键单击您的项目文件夹转到' Build Path'然后选择“配置构建路径”
  4. 在“库”选项卡下,单击“添加外部容器”。并转到包含jar文件的文件夹
  5. 点击确定然后在您的代码中转到public static void main(String[] args)并复制粘贴此代码段:

    try {
        UIManager.setLookAndFeel("com.seaglasslookandfeel.SeaGlassLookAndFeel");
    } catch (Exception e) {
        e.printStackTrace();
    }
    
  6. 你去了,L& F现在应用了。如果您有疑问,请提出问题

答案 2 :(得分:2)

我从NB IDE

运行没有任何问题

enter image description here

来自代码

import java.awt.*;
import javax.swing.*;
//import javax.swing.plaf.InsetsUIResource;

public class NimbusJPanelBackGround {

    public NimbusJPanelBackGround() {
        JFrame f = new JFrame();
        JButton btn = new JButton("  Whatever  ");
        JButton btn1 = new JButton("  Whatever  ");
        JPanel p = new JPanel();
        p.add(btn);
        //UIManager.getLookAndFeelDefaults().put("Button.contentMargins", new InsetsUIResource(0, 0, 0, 0));
        //SwingUtilities.updateComponentTreeUI(f);
        p.add(btn1);
        f.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
        f.add(p, BorderLayout.CENTER);
        f.setSize(200, 100);
        f.setLocation(150, 150);
        f.setVisible(true);
    }

    public static void main(String[] args) {

        /*try {
        for (UIManager.LookAndFeelInfo laf : UIManager.getInstalledLookAndFeels()) {
        if ("Nimbus".equals(laf.getName())) {
        UIManager.setLookAndFeel(laf.getClassName());
        UIManager.getLookAndFeelDefaults().put("Panel.background", Color.white);
        }
        }
        } catch (Exception e) {
        e.printStackTrace();
        }*/

        try {
            UIManager.setLookAndFeel("com.seaglasslookandfeel.SeaGlassLookAndFeel");
        } catch (Exception e) {
            e.printStackTrace();
        }


        EventQueue.invokeLater(new Runnable() {

            @Override
            public void run() {
                NimbusJPanelBackGround nimbusJPanelBackGround = new NimbusJPanelBackGround();
            }
        });
    }
}

编辑:

也不会从Substance L&F emulator通知查看我的答案是必需的用户信誉> 10k,答案被社区删除而不是答案: - )