Ich muss alle Kinder und Elternfenster schließen, wenn ich ein Fenster in der Hierarchie schließe.Wie alle Kinder und Elternfenster zu schließen?
Ich habe drei Linien von Fenstern:
Meine Fenster Hierarchie - Alle Linien in einem MainWindow
starten. Nur LoadPlayers
und CreatePlayers
sind Dialoge. Alle anderen Fenster sind Frames.
Z.B. Ich schließe TablesOverview
in der ersten Zeile - ich muss alle anderen Fenster in dieser Zeile schließen.
Aber Fenster in anderen Linien müssen offen bleiben.
Beachten Sie, dass TablesOverview
in zwei Zeilen ist.
Ich kann den Code schreiben, wo ich jedes Fenster nannte, das geschlossen werden muss. Aber ich brauche eine sauberere Lösung.
Dieser Code gibt mir alle geöffneten Fenster - ich weiß nicht, wie man nur Windows in einer Zeile nimmt.
Window[] windows = Window.getWindows();
Diese Codes geben mir nichts.
Window[] windows = frame.getOwnedWindows();
Component comp = frame.getParent();
Mögliche Duplikat [Schließen Sie alle Java-Kind-Sieg dows] (https://stackoverflow.com/questions/29859469/close-all-java-child-windows) –
Willkommen bei Stack Overflow! Bitte [besuchen Sie die Tour] (http://stackoverflow.com/tour), um zu sehen, wie die Seite funktioniert und welche Fragen hier behandelt werden, und bearbeiten Sie Ihre Frage entsprechend.Siehe auch: [So erstellen Sie ein minimales, vollständiges und überprüfbares Beispiel] (http://stackoverflow.com/help/mcve) –
Auch aus der Beschreibung scheint diese GUI ein Chaos zu sein. Siehe [Die Verwendung mehrerer JFrames, gute/schlechte Praxis?] (Http://stackoverflow.com/q/9554636/418556) Die Verwendung von zwei Dialogen könnte ein Schritt in die richtige Richtung sein, aber es gibt viele Strategien zum Redesign (um zusätzliche Rahmen zu entfernen), die kombiniert werden können. Siehe meine Antwort auf diese Frage für einen kurzen Überblick über die Alternativen. –