Java中的外观和感觉

3

我经常在Java中处理外观和感觉,它工作得很好,但唯一的问题是标题栏(标题)仍然具有操作系统(例如Windows平台)的本机外观和感觉,没有任何变化。

我想知道原因以及如何解决?有人可以帮忙吗..........

提前致谢


这里的信息不足以给你提供任何帮助。你具体在做什么?你使用哪些工具包? - bmargulies
据我所知,标题栏是由操作系统/窗口管理器创建和管理的。Java外观无法更改此设置。 - ZeissS
4个回答

6

这很酷,但值得一提的是,在我的OpenJDK中它不起作用。不过在sun jdk中可以工作。 - jonescb
只有在Webstart中使用OpenJDK时才会出现问题。 - Massimo Fazzolari
哦,我使用的是Webstart演示版。那一定是原因所在。 - jonescb
@ Mr Massimo Fazzolari,您说得对,但我使用了Substance Look and Feel并导入了test.jar,但标题栏仍然没有改变(仍为本机Windows)。如果您之前尝试过,请给我提供一份示例代码好吗?先感谢您。 - ironman
@ironman Substance需要JDK 6.0或更高版本。查看此示例https://substance.dev.java.net/docs/getting-started.html - Massimo Fazzolari

1

有些 PL&F 支持渲染框架装饰,而有些则不支持。我相信 Sun 跨平台的 PL&F(例如 Metal)支持它,但是特定于平台的 PL&F(例如 Windows)却不支持。

该功能默认未开启。要为所有新框架切换它,请使用JFrame.setDefaultLookAndFeelDecorated。该方法的 API 文档显示了如何为每个框架单独打开它。


0

使用

JFrame.setDefaultLookAndFeelDecorated(true);
JDialog.setDefaultLookAndFeelDecorated(true);

在创建任何JFrame或JDialog之前。 通常放在main函数中。

0
如果您想创建自己的无边框窗口,而不是使用Frame/JFrame,请使用Window/JWindow。 Frame/JFrame是Window/JWindow的扩展,提供边框和最大化、最小化和关闭按钮。通常这些小部件由操作系统提供,但您可以覆盖它们。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接