Wie entferne ich alle Komponenten von einem JFrame in Java?

Schreibe ich ein Programm, wo ich habe einen JFrame und ich möchten, entfernen Sie alle Komponenten aus, dann fügen Sie einfach eine Komponente, um es und neu Lackieren der Rahmen. Was ich bisher so etwas wie der code unten (namens in ein Objekt implementiert, dass JFrame, wo StartPanel implementiert JPanel):

removeAll();    
startPanel = new StartPanel();
startPanel.setVisible(true);
add(startPanel);
revalidate();
repaint();

Allerdings, wenn ich den code ausführen, es zeigt ein leeres Fenster (nicht das startPanel) und wenn ich minimieren/verkleinern Sie das Fenster, das Fenster wird schwarz. Wenn ich die removeAll() und es gibt keine Elemente, die bereits auf dem JFrame zeigt es das startPanel nur in Ordnung. Irgendwelche Ideen auf, wie eigentlich alles entfernen, und dann Holen Sie sich das neue panel noch zeigen?

Kommentar zu dem Problem - Öffnen
Mit einem Wort: CardLayout Kommentarautor: Hovercraft Full Of Eels
@HovercraftFullOfEels, die funktionieren könnte, aber gibt es eine andere Möglichkeit es manuell zu tun? und warum ist das nicht removeAll() arbeiten, denn ich denke, es sollte? was ist, wenn in anderen teilen der code, den ich brauchen, um einige Kombinationen der verschiedenen Komponenten (nicht nur eine zeigt), so dass ich nicht wollen, ein CardLayout? Kommentarautor: scaevity

InformationsquelleAutor der Frage scaevity | 2012-02-19

Schreibe einen Kommentar