8
我想設置一個JFrame的大小,使得contentPane是所需的大小。 JFrame.setSize()不考慮窗口裝飾,所以contentPane稍微小一些。窗口裝飾的大小是平臺和主題特定的,所以嘗試手動解釋它們是一個壞消息。設置一個ContentPane的大小(在JFrame內)
JFrame.getContentPane().setSize()失敗,因爲它被管理。
想法?
謝謝!
我想設置一個JFrame的大小,使得contentPane是所需的大小。 JFrame.setSize()不考慮窗口裝飾,所以contentPane稍微小一些。窗口裝飾的大小是平臺和主題特定的,所以嘗試手動解釋它們是一個壞消息。設置一個ContentPane的大小(在JFrame內)
JFrame.getContentPane().setSize()失敗,因爲它被管理。
想法?
謝謝!
在Java 5和更高,這是最簡單的方法:
JFrame frame = new JFrame("Content Pane Size Example");
frame.getContentPane().setPreferredSize(new Dimension(400, 300));
frame.pack();
frame.setVisible(true);
一如既往上述應在EDT執行。
如果你想這樣做你自己,然後在你的幀類型:
this.setLayour(null);
this.pack();
Insets insets = this.getInsets();
this.setBounds(0,0, insets.left + width + insets.right, insets.top + height + insets.bottom);
this.setLocationRelativeTo(null);
這個問題可能會有幫助:http://stackoverflow.com/questions/2451252/swing-set-jframe-content-面積大小 – Ash 2010-05-09 06:31:56