如何改善JAVA swing GUI的外观和感觉?

时间:2010-04-07 12:03:25

标签: java swing look-and-feel

我正在开发一个使用Java Swing的项目。 Java Swing GUI的默认外观非常无聊。有什么方法可以使用更好的外观和感觉吗?像网页上的东西......

6 个答案:

答案 0 :(得分:53)

您可以设置外观以反映平台:

try { 
    UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
} catch (Exception e) {
    e.printStackTrace();
}

如果这对您来说不够好,请查看SWT for Eclipse

答案 1 :(得分:16)

查看Java tutorial for setting the look and feel。除了那里提到的那些,最近的Java 6版本还包括Nimbus Look and Feel

答案 2 :(得分:2)

Substance是一个非常可配置的现代LAF:

https://github.com/kirill-grouchnikov/substance

答案 3 :(得分:2)

如果你对Photo shop很好,你可以将JFrame声明为未修饰的,并创建自己的图像,作为自定义GUI服务器。

在此示例中,

将JFrame称为帧。

JFrame frame = new JFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(800, 600);
//If you want full screen enter frame.setExtendedState(JFrame.MAXIMIZE_BOTH);
frame.setUndecorated(true);

现在JFrame有自己的边框和自定义GUI,如果您定义了自己的自定义按钮以进行最小化,最大化和退出,则需要在按钮上放置JPanel并声明这些按钮在动作侦听器功能中的作用(对不起......我不知道它是否像c ++或类一样被称为函数...) 例如,我们将JPanel称为面板,我们将设置一个退出按钮。

panel.addActionListener(new ActionListener(){
@Override
public void actionPerformed(ActionEvent e){
System.exit(JFrame.EXIT_ON_CLOSE);
});
}

答案 4 :(得分:1)

你可以看看here。我用谷歌搜索java swing主题。

那就是说,如果你正在做一个爱好项目改变LAF是没有问题的。如果你正在为你的好友制作软件,那也不是问题。如果您为客户制作软件,请保持默认。它运作良好,并不太令人兴奋:)

答案 5 :(得分:1)

另一个选项是Plastic Look-and-feel。它为Swing应用程序提供了类似XP的外观,并提供了许多自定义选项。

编辑:我刚注意到该页面上的图像已损坏。如果您点击JGoodies Looks page,至少可以看到3个可以用这些外观完成的示例。