我的代碼:的JPanel不會調整
public MyConstructor() {
view = new JPanel(new GridLayout(3, 1));
header = new JPanel(new GridLayout(2, 1));//2 ROWS 1 COLUMN
foot = new JLabel("Copyright...");
content = new JPanel();
info = new JLabel("");
logo = new JLabel() {
BufferedImage img;
@Override
public void paint(Graphics g) {
try {
img = ImageIO.read(new File("logo.jpg"));
} catch (IOException e) {
}
g.drawImage(img, 0, 0, null);
}
};
window.add(view);
header.add(logo);
header.add(info);
view.add(header);
view.add(content);
view.add(foot);
window.setLocation(width/2, 100);
window.setSize(width, height);
window.setPreferredSize(new Dimension(width, height));
content.setSize(window.getWidth(), height-70);
content.setPreferredSize(new Dimension(window.getWidth(), height-70));
}
「窗口」的框架...類是不延長JFrame的 我的類將是一個超類給別人,子類繼承公共內容JPanel。在我的超類中,我試圖設置GridLayout的3個部分的寬度和高度,標識和信息組件爲它們的高度加起來爲70 ...我設置了其他組件(視圖,標題,信息,標識),以便子類無法訪問它們...
當應用程序運行時,顯示登錄窗口,這將顯示並正確調整大小。一旦創建了其中一個子類的實例,則登錄窗口將隱藏,然後隱藏站點setVisible(false)
當顯示新窗口時,JFrame的大小正確,但頁眉,內容和頁腳是不是正確的尺寸。 我已經嘗試設置每個組件的大小和首選大小,但仍然無法正常工作......我也嘗試調用repaint並驗證/重新驗證
任何想法?
不要使用IDE來生成GUI。學習如何自己編寫代碼,以便學習Java而不是IDE。 – camickr 2010-11-29 16:51:08
除非你討厭所有的Java,我也是如此,但出於某種原因,你只需要使用Swing:P – slezica 2010-11-29 18:15:37