A
anndy1999
Unregistered / Unconfirmed
GUEST, unregistred user!
这样比直接在PaintBox上画图居然要慢许多, 是什么原因呢????
var
BackMap : TBitMap;
begin
BackMap := TBitMap.Create;
BackMap.Width := PaintBox.Width;
BackMap.Height := PaintBox.Height;
BackMap.Canvas.CopyRect(Rect(0,0,PaintBox.Width,PaintBox.Height),PaintBox.Canvas
Rect(0,0,PaintBox.Width,PaintBox.Height));
BackMap.Canvas.Pen.Color := clLime;
BackMap.Canvas.Pen.Mode :=pmCopy;
BackMap.Canvas.MoveTo(x,y);
BackMap.Canvas.LineTo(x,y);
......
PaintBox.Canvas.CopyRect(Rect(0,0,PaintBox.Width,PaintBox.Height),BackMap.Canvas
Rect(0,0,BackMap.Width,BackMap.Height));
BackMap.Free;
var
BackMap : TBitMap;
begin
BackMap := TBitMap.Create;
BackMap.Width := PaintBox.Width;
BackMap.Height := PaintBox.Height;
BackMap.Canvas.CopyRect(Rect(0,0,PaintBox.Width,PaintBox.Height),PaintBox.Canvas
Rect(0,0,PaintBox.Width,PaintBox.Height));
BackMap.Canvas.Pen.Color := clLime;
BackMap.Canvas.Pen.Mode :=pmCopy;
BackMap.Canvas.MoveTo(x,y);
BackMap.Canvas.LineTo(x,y);
......
PaintBox.Canvas.CopyRect(Rect(0,0,PaintBox.Width,PaintBox.Height),BackMap.Canvas
Rect(0,0,BackMap.Width,BackMap.Height));
BackMap.Free;