【发布时间】:2016-07-15 19:55:56
【问题描述】:
我在 Netbeans 中安装了 Darcula LAF,它可以正常工作。它修改了 IDE 的外观以及应用程序在“预览设计”弹出窗口和 GUI Builder 中的外观。
Here 就是一个例子。
但是,运行应用程序时外观并没有保持不变。
Here 就是一个例子。
使用此代码列出已安装的外观
for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {
System.out.println(info.getName());
}
很明显,Darcula LaF 已安装。但是,它没有显示为已安装到编译器。有没有办法让我在维护 Netbeans 模块的同时为编译器获取 LaF?
我查看了download page、GitHub page 甚至Geertjan's blog 以获取有关该主题的信息,但没有发现与此相关的信息。
我确定我遗漏了一些非常明显的东西。不设置外观会默认为金属,使用操作系统默认外观也不能解决问题。
感谢所有帮助,如果格式不正确,我深表歉意。
编辑:为清楚起见,它仅在代码中设置为 Nimbus。有一些屏幕截图说明它在未设置为 Nimbus 时的反应。它默认为金属。 我之前已经删除了将其设置为 Nimbus 的代码,并且它使用了 Metal。 http://prntscr.com/bte2xg 过去我将它设置为使用“Darcula”而不是 Nimbus,但它仍然使用 Metal。 http://prntscr.com/bte2b5
过去我已将其设置为使用“darcula-1.0.0”而不是 Nimbus,但它仍然使用 Metal。 http://prntscr.com/bte3nh
过去我已将其设置为使用“darcula-1.0.0.jar”而不是 Nimbus,但它仍然使用 Metal。 http://prntscr.com/bte42m
过去我已将其设置为使用“com.bulenkov.darcula”,但它仍然使用 Metal。 http://prntscr.com/bte3du
我只是把 Nimbus 留在了那里,只是为了让它出现在一些像样的东西中。
【问题讨论】:
-
在您的代码中,您告诉 Java 使用 Nimbus —— 那么您为什么希望它使用 Darcula L&F?是否已安装并不重要——重要的是您的代码告诉 Java 的内容。
-
为了清楚起见,它只设置为 Nimbus。请参阅对主帖子的编辑,以了解当该代码不在其中时会发生什么。我认为您会喜欢看 Metal 以外的其他东西的示例,但由于它看起来不是,所以我附上了屏幕截图,其中没有将代码设置为 Nimbus。
标签: java swing netbeans look-and-feel