Ja klar
es ging ja auch nicht um die Sache an sich (dass das Thema interessant ist, und man mal adrüber reden kann, ist klar - ich drifte ja auch häufig bei vermeintlich "einfachen Anfängerfragen" in fast schon philosophisch wirkende Grundsatzdiskussionen ab - und solange das nicht die (hilfreiche) Beantwortung der ursprünglichen Sprache untergräbt, ist da auch nichts dagegen zu sagen - im Gegenteil)
Vielmehr ... "unpassend" fand ich ... ähm - ja, solche argumentfreien Aussagen wie
>Ein repaint bewirkt ein repaint.
>>da kann ich aus der praxis sagen daß dies definitiv nicht der fall ist <- ???:L
(Was bewirkt ein "repaint" denn dann? Dass MineSweeper gestartet und die Festplatte defragmentiert wird?)
Oder eben auch deine Antwort dann
Das ist falsch! repaint() ruft paint(). paint() ruft paintComponent(), paintBorder() und paintChildren() auf.
Ja nun, DAS ist falsch. (Oder sollte das Ausrufezeichen eigentlich ein Doppelpunkt sein? :lol: ). Du weißt vermutlich, dass 'repaint()' eben NICHT 'paint' aufruft. Der Aufruf wird ungesehen an RepaintManager.addDirtyRegion weitergereicht, der damit dann eine Weile rumhantiert (dirty regions berechnet, vereinigt, usw) und dafür sorgt, dass dann irgendwann ein Event in die EventQueue gelegt wird, der bewirkt, dass irgendwann später, indirket, über Umwege 'paint' aufgerufen wird. Also ... WENN man so tief in die Materie einsteigt, dann sollte man auch aufpassen,
entweder (eindeutig als solche erkennbare) "unpräzise" Aussagen zu machen, die vielleicht (für den Anfänger und Threadersteller) zum Verständnis beitragen oder verdeutlichen, dass manches nicht so einfach ist, wie es aussieht,
oder präzise (und dann meinetwegen auch "absolute") Aussagen zu machen (wie "Das ist falsch") die dann aber ... nach Möglichkeit auch
richtig sein sollten. Und dann kann man sich imho auch solche (für einige anscheindend) ""überflüssigen"" Spitzfindigkeiten erlauben, wie etwa die Aussage, dass unsichtbare Components ja DOCH nicht repaintet werden und so :wink: