ERLEDIGT
NEIN
NEIN
ANTWORTEN
1
1
ZUGRIFFE
563
563
EMPFEHLEN
-
Hallo.
Ich setze mich seit zwei Wochen mit Swing auseinander und immer wenn ich denke: Jau, habs verstanden, passiert irgendwas komisches, was ich mir nicht erklären kann. Aber das folgende Problem toppt alle bisher dagewesenen. Bin verzweifelt.
Die Situation ist folgende:
Ich habe ein JFrame und als Reaktion auf einen Button-click werden diverse Komponenten von diesem Frame entfernt und ein neues JPanel daraufgelegt. Nach dem add(panel) rufe ich nun die repaint()-Methode für das JFrame auf. Ok, man sollte meinen, es klappt entweder oder es klappt nicht, aber das Verhalten ist unvorhersehbar. Wenn ich nach Start des Programms auf den entsprechenden Button klicke, liegt die Wahrscheinlichkeit bei ca. 40%, dass die von mir überschriebene paintComponent()-Methode des JPanels aufgerufen und das JPanel somit angezeigt wird. Ein list()-Aufruf zeigt aber, dass sie durchaus immer auf das JFrame gelegt wurde.
Ich habe jetzt einfach mal den Aufruf der repaint()-Methode des JFrames durch paintAll(frame.getGraphics()) ersetzt und, oh Wunder: jetzt scheint es jedesmal zu funktionieren.
Ich finde die Situation aber äußerst unbefriedigend, weil ich nicht wirklich verstehe, wo es vorher gehakt hat.
Hat jemand eine Idee, wie ein solches Verhalten zu erklären ist?
-
Arg
Ich hatte das validate() vergessen.
Verstehe zwar immer noch nicht, wieso es manchmal trotzdem funktionierte, aber nun gut...
Ähnliche Themen
-
Transparentes Panel auf PictureBox, in der gezeichnet wird, flackert!
Von Terminator2 im Forum .NET Grafik und SoundAntworten: 5Letzter Beitrag: 08.02.12, 19:38 -
Wie kann ich mehrere Layouts in einem Frame oder Panel anwenden?
Von Code46 im Forum Swing, Java2D/3D, SWT, JFaceAntworten: 2Letzter Beitrag: 05.01.11, 09:59 -
Ein window-transparentes Panel in einem opaquen Frame.
Von cojack20 im Forum Swing, Java2D/3D, SWT, JFaceAntworten: 1Letzter Beitrag: 05.11.10, 10:11 -
Panel in JTabbedPane, vom Panel aufs frame zugreifen.
Von che nino im Forum Swing, Java2D/3D, SWT, JFaceAntworten: 2Letzter Beitrag: 08.09.07, 21:00 -
Paintmethode auf ein Panel in einem Frame setzen?
Von a400 im Forum Swing, Java2D/3D, SWT, JFaceAntworten: 2Letzter Beitrag: 16.03.05, 15:34





Zitieren
Login





