Unterschied zwischen JFrame.repaint() und JPanel.repaint()
kann bitte jemand erklären den Unterschied zwischen JPanel.repaint()
Methode und JFrame.repaint()
Methode, ich denke, beide Anrufe die paintComponent()
Methode JPanel.
Bitte klären, danke
Du musst angemeldet sein, um einen Kommentar abzugeben.
Aufrufen
repaint()
für jede Komponente wird eine Anfrage an den repaint-manager zu malen, dass Komponente. Wenn die Bedingungen korrekt sind, wird der manager dann lassen Sie die Komponentepaint(...)
- Methode aufgerufen. Da eine Komponente die paint-Methode wird dann rufen SiepaintComponent(...)
,paintBorder(...)
undpaintChildren(...)
diese Komponente Farbe selbst, seine Grenze und cascade Malerei rekursiv alle seine Kinder, Ihre Kinder, Ihre Kindeskinder, etc. Der Aufruf dieser auf JFrame wird die Ursache dieser Kaskade auftreten, die den gesamten top-level-Fenster in der Erwägung, dass der Aufruf auf eine Komponente bewirkt, dass ein Neuzeichnen der Komponente und Ihrer Kinder nur.Beachten Sie, dass der Aufruf
repaint()
garantiert nicht, dass die repaint-manager Farbe der Komponente, vor allem, wenn es stapeln sich die Anfragen. Für mehr details, Lesen Sie bitte Malen in AWT und Swing.1. Wenn
repaint()
Methode wird aufgerufen, dann der Event-handler-thread benachrichtigt alle Komponenten , und jede Komponente ruft IhrepaintComponent()
Methode.2. Aufruf
JPanel.repaint()
haben alle Komponenten im JPanel zurepaint()
und die BerufungJFrame.repaint()
haben alle Komponenten im JFrame zurepaint()
.3. Rufen Sie JFrame.repaint() repaint das JPanel zu, ohne die Notwendigkeit von JPanel.repaint()....
In kurzen,
JPanel.repaint()
wird, aktualisiert sich selbst und seine Kinder.JFrame.repaint()
wird, aktualisiert sich selbst und seine Kinder. Aber daJFrame
ist die Basis, dieser wird neu aufgebaut, jede Komponente innerhalb.Check "@Luftkissenfahrzeug Voller Aale" Antwort für details.