...wie gesagt wenn du korrekt lockst/unlockst geht das (zumindestens bei mir unter xe5) problemlos...
Delphi-Quellcode:
procedure TPaintThread.Execute;
begin
While (Terminated = False) do
begin
MyBild.Canvas.lock;
Original.Canvas.Lock;
try
MyBild.Width := random(500) + 500;
MyBild.Height := random(500) + 500;
MyBild.Canvas.Draw(random(25) + 1, random(25) + 1, Original);
MyBild.Canvas.Rectangle(random(25) + 1, random(25) + 1, random(50) + 25, random(50) + 25);
finally
MyBild.Canvas.unlock;
Original.Canvas.Unlock;
end;
Synchronize(Zeichnen);
end;
end;