Die Onlinehilfe meint dazu:
Zitat von
OH:
Das Ereignis OnPaint wird beim Neuzeichnen des Formulars ausgelöst.
Delphi-Syntax:
property OnPaint: TNotifyEvent;
C++ Syntax:
__property Classes::TNotifyEvent OnPaint = {read=FOnPaint, write=FOnPaint, stored=IsForm};
Beschreibung
Mit OnPaint können Sie bestimmte Verarbeitungen durchführen, wenn die Anzeige des Formulars aktualisiert wird. Alle speziellen Zeichenoperationen mit dem Formular sollten hier ausgeführt werden. OnPaint wird ausgelöst, bevor die Steuerelemente des Formulars angezeigt werden.
Welche Teile der Zeichenfläche des Formulars neu gezeichnet werden müssen, können Sie mit der Eigenschaft ClipRect der Zeichenfläche ermitteln.
Verwenden Sie die Eigenschaft Canvas des Formulars außerhalb der Ereignisbehandlungsroutine für OnPaint, wird die Zeichenfläche beim nächsten OnPaint-Ereignis gelöscht und überschrieben.
Also immer wieder, wenn das Fenster sichtbar ist, oder Invalidate aufgerufen wird, ...