下面这个过程,为什么呢最后在imgdrawingpad.canvas上显示不了我画出来的图形呢?
procedure TForm1.CreateImg;
var Im:TIMage;
begin
Screen.cursor:=crDefault;
im:=TImage.Create(self) ;
im.Parent:=sbxMain;
im.Stretch:=true;
im.Left:=200;
im.Top:=200;
im.Transparent:=true;
im.Visible:=true;
im.height:=30;
im.width:=20;
im.Canvas.Pen.Mode:=pmCopy;
im.Canvas.Pen.Color:=clred;
im.Canvas.MoveTo(100,100);
im.Canvas.LineTo(110,100);
im.Canvas.Rectangle(100,90,120,110);
im.Canvas.MoveTo(120,100);
im.Canvas.LineTo(130,100);
imgdrawingpad.Canvas.CopyRect(rect(100,90,130,110),im.Canvas,rect(100,90,130,110));
im.OnMouseDown:=form1.ImgMouseDown;
im.OnMouseMove:=form1.ImgMouseMove;
im.OnMouseUp:=form1.ImgMouseUp;
end;
procedure TForm1.CreateImg;
var Im:TIMage;
begin
Screen.cursor:=crDefault;
im:=TImage.Create(self) ;
im.Parent:=sbxMain;
im.Stretch:=true;
im.Left:=200;
im.Top:=200;
im.Transparent:=true;
im.Visible:=true;
im.height:=30;
im.width:=20;
im.Canvas.Pen.Mode:=pmCopy;
im.Canvas.Pen.Color:=clred;
im.Canvas.MoveTo(100,100);
im.Canvas.LineTo(110,100);
im.Canvas.Rectangle(100,90,120,110);
im.Canvas.MoveTo(120,100);
im.Canvas.LineTo(130,100);
imgdrawingpad.Canvas.CopyRect(rect(100,90,130,110),im.Canvas,rect(100,90,130,110));
im.OnMouseDown:=form1.ImgMouseDown;
im.OnMouseMove:=form1.ImgMouseMove;
im.OnMouseUp:=form1.ImgMouseUp;
end;
im.width:=20;
区域太小了,没有显示出来啊
im.width:=20;
区域太小了,没有显示出来啊
im.width:=20;
区域太小了,没有显示出来啊