Achtung, wenn du in der Behandlung (oder davor) irgendeiner anderen Message (d)eine Aktion abbrechen willst, aber wo in dieser Message schon das Andere ausgeführt wird, dann wird erst die andere Aktion ausgeführt und danach dann das Erste beendet, denn ...
Beispiele:
Delphi-Quellcode:
while not Abbruch do begin
// mach was
Application.ProcessMessages;
end;
oder (hier wird danach noch mehr gemacht)
Delphi-Quellcode:
while not Abbruch do begin
Application.ProcessMessages;
// mach was
end;
Im Application.ProcessMessages wird diese Message verarbeitet und erst nach Abarbeitung geht es in den ersten Code wieder rein.
Maximal mit einem
Abort im OnMessage könnte man hier nach der neuen Message das Äußere abschießen.