問題是,當我嘗試最大化JFrame時,框架得到最大化,但內容大小被保留。Java Swing JFrame最小化/最大化調整大小錯誤
http://i.imgur.com/7q5Yh9F.png
我的主框架類:
private CardLayout layout;
private SettingsFrame settingsFrame;
private Container contentPane;
Frame frame = this;
private ApplicationFrame() {
contentPane = getContentPane();
layout = new CardLayout();
contentPane.setLayout(layout);
initializeFrame();
settingsFrame = new SettingsFrame(model);
initializeMenuBar();
initializePanels();
showPage(FIRST_PAGE);
this.addWindowStateListener(listener);
}
public SettingsFrame getSettingsFrame() {
return settingsFrame;
}
private void initializeFrame() {
this.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
this.setTitle(APPLICATION_TITLE);
this.settingsFrame = new SettingsFrame(model);
this.setSize(1400, 900);
this.setLocationRelativeTo(null);
}
private void initializePanels() {
add(new Panel(), FIRST_PAGE);
add(new Panel(), SECOND_PAGE);
add(new Panel(), THIRD_PAGE);
}
我試圖做一個傾聽者,趕上最大化事件,有我想:
revalidate();
repaint();
也
invalidate();
validate();
但沒有成功。
我發現:
frame.setExtendedState(JFrame.MAXIMIZED_BOTH);
被corectly最大化的框架,但我不能使用的是聽衆,因爲最大化的事件已經發生了。
爲了更好地幫助更快,發佈[MCVE]或[短的,獨立的,正確的示例](http://www.sscce.org/)。 –