1

我正在使用 Vista,我在 Win XP 上运行的旧 Java 应用程序的边框很细,大约 2 像素厚,但现在在 Vista 上,边框默认为粗线,可能是 6.7 像素厚,我可以在 Java 中指定我的JFrame边框应该是?

4

1 回答 1

1

默认情况下,边框由本机窗口系统处理。但是在 JFrame API 中有一个方法setDefaultLookAndFeelDecorated(boolean)。它表示如果设置为 true并且当前外观支持它,它将使用外观来绘制边框、标题和按钮。我从来没有尝试过这个,因为我不知道哪种外观和感觉支持装饰。第一件事是找到一个,然后通过UIManageror 命令行-Ddefault.laf参数设置它,并通过 JFrame 方法打开外观装饰。

但是,如果您使用此选项,您可能会得到非标准外观的窗户装饰。鉴于 Vista 吸引眼球(鼠标悬停在按钮和半透明标题栏上时发光),您确定要这样做吗?

另一种选择是使用该JFrame.setUndecorated(boolean)方法并自己处理边框、标题栏等的渲染,但这可能更加困难。

于 2009-12-13T12:04:15.190 回答