Vielleicht hilft dir der Code etwas, ist nicht mehr das Neuste, sollte aber om Stil her glaub ich nicht allzu schlecht sein. Das sollte genau das sein, was du gerne haben möchtest vom Layout her haben möchtest.
[Java]
//Constructor
GridBagTest(){
GridBagLayout gbl = new GridBagLayout();
GridBagConstraints gbc = new GridBagConstraints();
c = getContentPane();
c.setLayout(gbl);
left = new JPanel();
left.setBorder(new TitledBorder("left"));
gbc = makeGbc(0,0,1,1);
gbc.weightx = 0.15;
gbc.weighty = 0;
gbc.fill = GridBagConstraints.BOTH;
gbc.anchor = GridBagConstraints.NORTHWEST;
gbl.setConstraints(left, gbc);
middle = new JPanel();
middle.setBorder(new TitledBorder("middle"));
gbc = makeGbc(1,0,1,1);
gbc.weightx = 1;
gbc.weighty = 1;
gbc.fill = GridBagConstraints.BOTH;
gbc.anchor = GridBagConstraints.CENTER;
gbl.setConstraints(middle, gbc);
bottom = new JPanel();
bottom.setBorder(new TitledBorder("bottom"));
gbc = makeGbc(0,1,2,1);
gbc.weightx = 1;
gbc.weighty = 0.15;
gbc.fill = GridBagConstraints.BOTH;
gbc.anchor = GridBagConstraints.CENTER;
gbl.setConstraints(bottom, gbc);
c.add(left);
c.add(middle);
c.add(bottom);
}
//Help method to create the gbc
protected GridBagConstraints makeGbc(int x, int y, int width, int height){
GridBagConstraints gbc = new GridBagConstraints();
gbc.gridx = x;
gbc.gridy = y;
gbc.gridwidth = width;
gbc.gridheight = height;
gbc.insets = new Insets(3,3,3,3);
return gbc;
}
[/Java]
Ich habe einfach den Konstruktor, zusammen mit der Hilfsmethode, damit es weniger Code gibt im Konstruktor, gepostet.