Java 9中的JFrame扩展

在左边的Java 9u4和Windows 7右边的8u144下运行的代码完全相同。

不同的窗口大小

Java 9似乎使窗口更大。 造成这种情况的原因是什么 – JEP 263? 我该如何禁用它?

public class SimpleFrame { public static void main(String[] args) { JFrame frame = new JFrame(); frame.getContentPane().add(new JLabel("Horse")); frame.setSize(new Dimension(200, 100)); frame.setVisible(true); } } 

我在物质错误报告中找到了这个模糊的选项。 这解决了Swing应用程序的问题。

-Dsun.java2d.uiScale=1.0

如果您正在使用JavaFX,那么您需要

-Dprism.allowhidpi=false

很遗憾,我找不到这些选项的官方文档