Java 在Swing应用程序框架JSR296中设置不同的外观

Java 在Swing应用程序框架JSR296中设置不同的外观,java,swing,look-and-feel,jsr296,Java,Swing,Look And Feel,Jsr296,我的应用程序使用SAF(JSR296)。 我想在不同的平台上使用不同的外观和感觉: Linux的默认值(Java) 和Windows系统(本机) 添加了: 到目前为止,我在应用程序类的startup()方法中为Windows操作系统硬编码了L&F(正如Joy和Thompson所建议的): 在application.properties文件中,指定了默认L&F 没有更好的办法了吗?试试这个: UIManager.setLookAndFeel(UIManager.getSystemLookAnd

我的应用程序使用SAF(JSR296)。 我想在不同的平台上使用不同的外观和感觉:

Linux的默认值(Java)

和Windows系统(本机)

添加了: 到目前为止,我在应用程序类的startup()方法中为Windows操作系统硬编码了L&F(正如Joy和Thompson所建议的):

在application.properties文件中,指定了默认L&F

没有更好的办法了吗?

试试这个:

UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
它将根据运行应用程序的系统设置外观。

尝试以下操作:

UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
它将根据运行应用程序的系统设置外观

Linux的默认(Java)版本。。Windows系统(本机)

将Windows的外观设置为本机PLAF,同时保留(默认)用于Linux/Unix的金属PLAF,并使用Mac的默认值,我们可靠地得知该默认值的名称为:

com.apple.laf.AquaLookAndFeel
我可能会向Linux/Unix机器推荐Nimbus。金属板是如此……上个千年

Linux的默认(Java)版本。。Windows系统(本机)

将Windows的外观设置为本机PLAF,同时保留(默认)用于Linux/Unix的金属PLAF,并使用Mac的默认值,我们可靠地得知该默认值的名称为:

com.apple.laf.AquaLookAndFeel

我可能会向Linux/Unix机器推荐Nimbus。金属板是如此……上个千年。

这样做不需要太多代码。您可以创建特定于平台的属性文件,或在应用程序属性中使用“系统”LnF。
有关详细信息,请参见

,这样做不需要太多代码。您可以创建特定于平台的属性文件,或在应用程序属性中使用“系统”LnF。
更多详细信息,请参见

Metal不是默认的Java外观。Metal不是默认的Java外观。脚注:在Mac OS上,
getSystemLookAndFeelClassName()
返回
com.apple.laf.aqualLookandFeel
,这是默认值。脚注:在Mac OS上,
getSystemLookAndFeelClassName()
返回
com.apple.laf.AquaLookAndFeel
,这是默认的.hmm。。。如何使用/安装/部署特定于平台的属性文件?嗯。。。如何使用/安装/部署特定于平台的属性文件?