G
Gast
Gast
Tach zusammen,
mein Hauptfenster hält mehrere JPanels. Je nachdem, welche Option in der Menüleiste gewählt wurde, muss ein anderes Panel geladen/angezeigt werden.
Das Entladen der Panels - bis auf ein bestimmtes Panel - mache ich so:
Das funzt auch prima.
Nun soll das neu gewählte Panel geladen werden:
Das Panel soll genau an die Stelle geladen werden, an der das vorherige Panel entfernt wurde. elementPositioner ist eine Methode, die ich geschrieben habe und die GridBagLayout benutzt.
Das funzt jedenfalls nicht. Das neue Panel wird nicht geladen. Lade ich hingegen bei Programmstart alle Panels (also quasi übereinander), klappt alles bestens.
Frage also: Warum lädt er mir die Panels nicht, wenn ich sie brauche, sondern nur dann, wenn sie vorher schon mal geladen waren?????
THX im voraus.
mein Hauptfenster hält mehrere JPanels. Je nachdem, welche Option in der Menüleiste gewählt wurde, muss ein anderes Panel geladen/angezeigt werden.
Das Entladen der Panels - bis auf ein bestimmtes Panel - mache ich so:
Code:
Component[] comp = getContentPane().getComponents();
for (int i = 0; i < comp.length; i++) {
if (comp[i].getName() != "ClosePanel") {
getContentPane().remove(comp[i]);
}
}
Nun soll das neu gewählte Panel geladen werden:
Code:
if (ViewName.equals(Globals.MNU_ITEM_NNA)) {//NNA-Panel laden
gbc = elementPositioner.makeGBC(0, 0, 1, 1, 100, 100);
gbc.fill = GridBagConstraints.BOTH;
gbl.setConstraints(nnapanel, gbc);
getContentPane().add(nnapanel);
}
repaint();
Das Panel soll genau an die Stelle geladen werden, an der das vorherige Panel entfernt wurde. elementPositioner ist eine Methode, die ich geschrieben habe und die GridBagLayout benutzt.
Das funzt jedenfalls nicht. Das neue Panel wird nicht geladen. Lade ich hingegen bei Programmstart alle Panels (also quasi übereinander), klappt alles bestens.
Frage also: Warum lädt er mir die Panels nicht, wenn ich sie brauche, sondern nur dann, wenn sie vorher schon mal geladen waren?????
THX im voraus.