Java Swing:系统范围的组件规模?

But*_*aca 4 java swing

有没有办法按单个因素缩放应用程序中的所有 Swing 组件?我有一个现有的 Swing 应用程序,我想以双倍大小显示所有组件。这可能吗?

编辑:

我正在将 Java Swing 应用程序移植到 Sugar(OLPC XO 图形环境)。我没有辅助功能。该机器在 7.5 英寸显示屏中只有一种 1200x900 的分辨率。所以组件真的很小而且不可读。

小智 7

如果你放置

System.setProperty("sun.java2d.uiScale","2")
Run Code Online (Sandbox Code Playgroud)

在 main 方法的最开始,这会将整个应用程序缩放 2 倍。其他缩放因子也是可能的。如果在 Windows 7 上的 openJDK 11 和带有 KDE 的 Linux 上成功地尝试了这个,无论是系统外观还是感觉。Windows 接受分数缩放因子,KDE 不接受。

如果您不想修改源代码,则 jvm 的命令行选项将具有相同的效果:

java -Dsun.java2d.uiScale=2 -jar myApp.jar