Hallo F.W.,
häufig lösen Delphi-Entwickler dieses Problem mit
Application.Processmessages und einer globalen Variablen. Wenn Du hier suchst:
schleife abbrechen solltest Du div Lösungsansätze dieser Art finden.
Bei genauerer Betrachtung wirst Du dort auch Erklärungen finden, warum diese Variante nicht eingesetzt werden sollte (zT wird stattdessen auf Threads verwiesen)...