Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/352.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在JFrame上最大化和防止调整大小?_Java_Swing_Jframe_Resize - Fatal编程技术网

Java 在JFrame上最大化和防止调整大小?

Java 在JFrame上最大化和防止调整大小?,java,swing,jframe,resize,Java,Swing,Jframe,Resize,我正在制作一个游戏,所以我希望JFrame开始最大化,但我也不希望用户调整游戏的大小,因为这会破坏图形。我想知道如何同时做这两件事 现在,我可以使用JFrame.setExtendedState(JFrame.MAXIMIZED_两者)来最大化,但一旦我使用JFrame.setResizeable(false),我就不能再使用setExtendedState()来最大化它了 我意识到我可以最大化它,存储宽度和高度,然后使用它,但如果可能的话,我更希望窗口看起来像是最大化的。如果有人知道我在说什么

我正在制作一个游戏,所以我希望JFrame开始最大化,但我也不希望用户调整游戏的大小,因为这会破坏图形。我想知道如何同时做这两件事

现在,我可以使用JFrame.setExtendedState(JFrame.MAXIMIZED_两者)来最大化,但一旦我使用JFrame.setResizeable(false),我就不能再使用setExtendedState()来最大化它了

我意识到我可以最大化它,存储宽度和高度,然后使用它,但如果可能的话,我更希望窗口看起来像是最大化的。如果有人知道我在说什么,当标题栏被最大化时,而当标题栏的大小只是为了填满屏幕时,标题栏会发生变化。

这对我很有用:

frame.setExtendedState(JFrame.MAXIMIZED_BOTH);
frame.setVisible(true);
frame.setResizable(false);

如果您使用的是JSR296,这就是它在singleton应用程序类中的工作方式:

    JFrame main = view.getFrame();
    main.setExtendedState(JFrame.MAXIMIZED_BOTH);
    main.pack();
    show(view);
    main.setResizable(false);

如果没有pack()操作,窗口不会最大化。这是使用Linux和Java 6测试的。

谢谢,这很有效!以前,我在setResizeable()下有setVisible(),但失败了,尽管我不知道它们为什么会相互干扰。