Ein Timer "läuft" überhaupt nicht. Zu einem Zeitpunkt X wird der Timer ausgelöst ...
... aber
- dieses "Auslösen" erfolgt über eine Nachricht vom Betriebssystem
- diese Nachrichten werden von der VCL-/FMX-Anwendung abgearbeitet, wenn der UI-Thread dafür Zeit hat
- wenn man diesen UI-Thread blockiert (z.B. mit so einer while
Schleife) dann schiesst man sich damit in das Knie, denn damit hat der UI-Thread ja eben keine Zeit diese Nachrichten zu bearbeiten
Und wie kann ich dem Thread die Zeit geben ohne das er meinen Code weiter ausführt ?
Ein
Sleep()
bewirkt genau das geliche wie eine
while
Schleife also kann ich diesen Befehl auch nicht benutzen.