Wenn es um die Lesbarkeit geht ist folgende Variante, angelehnt ans Cristian Seehase´s Version noch lesbarer.
Delphi-Quellcode:
function DemoThread(const AParentHandle : THandle): Integer;
var
i: Integer;
begin
for i := 0 to 9 do
begin
if Abort then
begin
SendAbort(AParentHandle );
break;
end else
begin
SendStatus(AParentHandle, i);
Sleep(500);
end;
end;
if not Abort then
begin
SendFinished(AParentHandle);
Result := 0;
end;
end;
procedure SendAbort(const AParentHandle : THandle);
begin
SendMessage(AParentHandle, CM_ABORT, 0 , 0);
end;
procedure SendStatus(const AParentHandle : THandle; index: Integer);
begin
SendMessage(AParentHandle, CM_STATUS, Integer(PChar('Durchlauf:')), index);
end;
procedure SendFinished(const AParentHandle : THandle);
begin
SendMessage(AParentHandle, CM_FINISHED, 0, 0);
end;
Jeder soll programmieren wie er selber meint den Code am Besten lesen zu können, denn in 80% der Fälle wird der Verfasser auch den Code lesen.