在image的canvas作图,如line, 能否将其清除,就是全部的内容也可以(20分)

  • 主题发起人 主题发起人 ayu310
  • 开始时间 开始时间
清除一条线:
procedure TForm1.Button1Click(Sender: TObject);
begin
Image1.Canvas.Pen.Mode :=pmNotXor;
Image1.Canvas.MoveTo(20,30);
Image1.Canvas.LineTo(90,200);
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
Image1.Canvas.MoveTo(20,30);
Image1.Canvas.LineTo(90,200);
end;

清楚全部内容:
Image1.Canvas.FillRect(Image1.Canvas.ClipRect);
 
如果你事先 将要画的地方记下来,需要清除的时候 就可以根据原来的备份图,
将这个需要清除的地方重新画一遍。
比如你要在 Image1上 :
MoveTo(0,0);
LineTo(100,100);
你可以 Image2.Assign(Image1);,PointStart为(0,0),PointEnd(100,100);
当你想清除的时候,就重Image2中吧 PointStart与PointEnd这个范围Copy到Image1中
 
接受答案了.
 
后退
顶部