Delphi-Quellcode:
For i := 1 to FImage.Width do
For j := 1 to FImage.height do begin
FX := i;
FY := j;
Synchronize(SetPixels);
application.ProcessMessages
end;
end;
Solltest du besser so schreiben:
Delphi-Quellcode:
For i := 1 to FImage.Width do
For j := 1 to FImage.height do begin
FX := i;
FY := j;
Synchronize(SetPixels);
end;
end;
application.ProcessMessages;
Sonst wird Application.ProcessMessages bei jedem (!) Pixel ausgeführt,
was der Geschwindigkeit nicht gerade zuträglich ist
Und wenn du ein Rauschen haben willst solltest du ins Execute schreiben:
Delphi-Quellcode:
while not Terminated do begin
Snow(FImage);
end;
Dadurch wird Show() solange ausgeführt, bis du deinen Tread beendest/zerstörst.
(Thread.Terminate)