OnIdle wird, so wie es auch in der
OH erwähnt wird,
nur einmal ausgeführt, wenn alle anderen nstehenden Messages abgearbeitewt wurden.
Bewegt man die Maus ein Stückchen, dann kommen neue Messages rein (z.B. WM_MOUSEMOVE) und wurden diese wieder abgearbeitet, wird OnIdle jedes Mal erneut ausgeführt.
Wie gesagt, um in Delphi auf die
VCL-Forms zu zeichnen, muß/sollte man sich im
VCL-Thread befinden ... also solange man nicht zusätzliche (längere) Berechnungen
im Thread hat, kommt man mit einem Timer
IMHO besser.