我的代码:的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