最初(请参阅我之前的问题“ Java 如何使 JFrames 作为最大化窗口开始”)我想制作一个开始最大化的窗口。这段代码完成了这个:
public static void main(String[] args) {
JFrame frame = new JFrame();
frame.setExtendedState(JFrame.MAXIMIZED_BOTH);
frame.setVisible(true);
}
然而,如果这个窗口被恢复下来,它就变成了一个几乎不存在的栏。为了解决这个问题,我使用 setSize() 设置了窗口的大小。这可行,但存在另一个问题,窗口仍然可以调整大小。
为了解决这个问题,我设置了 setResizable(false); 这是我到目前为止的代码:
public static void main(String[] args) {
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
JFrame frame = new JFrame("Jedia");
frame.setExtendedState(JFrame.MAXIMIZED_BOTH);
frame.setSize(screenSize);
frame.setResizable(false);
frame.setVisible(true);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
但是,现在窗口以指定的大小(而不是最大化)开始,并且无法恢复。
所以,我的问题是,我怎样才能让窗口开始最大化,在它恢复时给它一个大小,并使调整大小变得不可能?或者制作一个开始最大化且无法恢复的窗口?