JFrame 每次启动时都会启动不同的大小

JFrame launches different size every launch

我的 Java JFrame 几乎每次启动时都会启动不同的大小。它要么是我想要的大小 (800x600),要么太小而无法对其进行任何处理。

public static void initFrame() {

    JFrame frame = new JFrame("Test");
    frame.setVisible(true);
    frame.setMinimumSize(new Dimension(800,600));
    frame.setMaximumSize(new Dimension(800,600));
    frame.setSize(800,600);
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    frame.setLocationRelativeTo(null);
    frame.setResizable(false);
}

我从另一个启动 class:

public static void main(String[] args) {
    SwingUtilities.invokeLater(new Runnable() {
        public void run() {
            Frame.initFrame();
        }
});

尝试将 frame.setVisible(true); 移动到末尾,以便编译器在使其可见之前读取 JFrame 的大小。