2012-03-12 33 views
-1

ubuntu使用什么外观和感觉,(11或更高)?我想在一个可以在windows上运行的swing应用程序中使用它。我在哪里可以找到该lnf的罐子?ubuntu使用什么外观和感觉?

+2

假设您的主要问题是如何在另一个操作系统上运行gtk(aka系统* nix LAF):不可能,甚至是您从openjdk中获取它的源代码(不包括在其他操作系统的jdks中)。它严重依赖于OS方法调用,它不会编译,out-commenting留给你......没有画:-) – kleopatra 2012-03-13 11:18:24

回答

9

Java支持SystemLookAndFeel,它试图与每个操作系统中的本机应用程序的外观相匹配,这是我认为您想要做的。不过,我不知道它在这项任务中成功的程度如何。

有关于外观设置here的官方教程。

编辑:

这个片段(加上任何异常处理),似乎我的Linux系统

UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); 

上工作得很好我没有进行广泛的测试,但它确实看起来更在家里比默认的外观。

如果你想重现GTK主题的不同的电脑上,你可以试试这个:

UIManager.setLookAndFeel("com.sun.java.swing.plaf.gtk.GTKLookAndFeel"); 

com.sun.java.swing.plaf.gtk.GTKLookAndFeel就是在Linux系统上getSystemLookAndFeelClassName()回报最近太阳的JRE。如果您使用来自其他供应商的JRE,则可能会遇到问题。

这就是说,我不确定在非Linux操作系统上使用这种方法时,它与真实情况有多接近。如果我是你,我会在一个VirtualBox虚拟机上安装Linux发行版,并在适当的测试环境中尝试我的应用程序。

+0

是的,但我想在diff系统上复制那个lnf。所以我不能使用系统外观来达到这个目的。 – frewper 2012-03-12 14:38:43