从JRE 7或8升级到JRE11后,Java Swing JFrame大小会有所不同如何使框架大小保持一致?

问题描述

我帮助维护一个非常老的Swing项目。我们注意到,在JRE 11下运行的swing项目页面看起来与在先前版本JRE 8下运行的swing项目有很大不同。

我一直在探索这个问题。我注意到的一件事是基本大小似乎有所不同。 JRE11使所有JFrame变大。我们需要保持大小一致。

这是一个小程序,用于演示我所看到的内容

    import javax.swing.*;

public class JustAFrame
{
    public static void main(String[] args)
    {
        SwingUtilities.invokelater(
                () -> {
                    JFrame frame = new JFrame();
                    frame.setDefaultCloSEOperation( WindowConstants.EXIT_ON_CLOSE );
                    frame.pack();
                    frame.setSize(400,500);
                    frame.setVisible(true);
                });
    }
}

我使用Java 64位版本jdk1.8.0_241在同一Windows 10计算机上运行了该程序,并且 zulu11.41.23-ca-fx-jdk11.0.8-win_x64。 我要附加一个图像,该图像显示在两个java版本中并排运行的同一类。 JRE 11版本似乎大了约50%。 我该怎么做才能使JRE 11 JVM使我们的JFrames像我们以前的Java版本一样大小,而不必进入我们应用程序中的每个JFrame实例并弄乱size Dimension参数?

enter image description here

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)