Java 9中的JFrame扩展

Ada*_*dam 17 java swing java-9

在左侧的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);
    }
}
Run Code Online (Sandbox Code Playgroud)

Ada*_*dam 11

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

-Dsun.java2d.uiScale=1.0

如果你正在使用JavaFX,你需要

-Dprism.allowhidpi=false

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