Schönen guten Abend!
Für ein Programm habe ich ein Borderlayout erstellt.
Dieses beinhaltet WEST und CENTER.
Im westlichen JPanel habe ich drei Buttons. Diese sollen immer da bleiben, egal, was im Programm passiert.
Im zentrierten JPanel "spielt sich alles ab". Je nach Aktion und Buttonklick soll sich das Center-Fenster öffnen.
Dementsprechend habe ich verschiedene JPanels, die alle als Ausgabewert ein Center ausgeben.
Nun könnte ich entsprechend je nach Aktion "setVisible(true/false)" je nach Wunsch einstellen, aber bei sehr vielen Fenstern würden sich da sehr viele Bedingungen ansammeln.
Meine Frage/Problem:
Ist ein CardLayout hierfür von Nutzen bzw. ist dies so umsetzbar, wie ich es mir vorstelle?
Ich habe bereits herumprobiert, weiß aber nicht wie ich die als Methoden definierte JPanels, die ich als CENTER zurückgebe, in einem CardLayout verpacke bzw. ob dies überhaupt möglich ist.
Ich habe z.B Folgendes:
Wie man sieht, hat mein Fenster ein Borderlayout mit einem Grouplayout im Center und alle Center-Panels will ich in einem CardLayout unterbringen und anschließend "durchblättern" können.
Ist dies möglich? Falls ja, wie?
Für ein Programm habe ich ein Borderlayout erstellt.
Dieses beinhaltet WEST und CENTER.
Im westlichen JPanel habe ich drei Buttons. Diese sollen immer da bleiben, egal, was im Programm passiert.
Im zentrierten JPanel "spielt sich alles ab". Je nach Aktion und Buttonklick soll sich das Center-Fenster öffnen.
Dementsprechend habe ich verschiedene JPanels, die alle als Ausgabewert ein Center ausgeben.
Nun könnte ich entsprechend je nach Aktion "setVisible(true/false)" je nach Wunsch einstellen, aber bei sehr vielen Fenstern würden sich da sehr viele Bedingungen ansammeln.
Meine Frage/Problem:
Ist ein CardLayout hierfür von Nutzen bzw. ist dies so umsetzbar, wie ich es mir vorstelle?
Ich habe bereits herumprobiert, weiß aber nicht wie ich die als Methoden definierte JPanels, die ich als CENTER zurückgebe, in einem CardLayout verpacke bzw. ob dies überhaupt möglich ist.
Ich habe z.B Folgendes:
Java:
public class Window {
.
.
.
public Window() {
JFrame frame = new JFrame("Cocktail-Datenbank");
frame.setLayout(new BorderLayout());
frame.add(hinzufuegenPanel(), BorderLayout.CENTER);
}
private JPanel hinzufuegenPanel() {
JPanel center = new JPanel();
GroupLayout layout = new GroupLayout(center);
center.setLayout(layout);
layout.setAutoCreateGaps(true);
layout.setAutoCreateContainerGaps(true);
center.setVisible(false);
.
.
.
return center;
}
public static void main( String[] args ) {
new Window();
}
Wie man sieht, hat mein Fenster ein Borderlayout mit einem Grouplayout im Center und alle Center-Panels will ich in einem CardLayout unterbringen und anschließend "durchblättern" können.
Ist dies möglich? Falls ja, wie?
Zuletzt bearbeitet: