22-05-2013, 01:40 PM
كيف احدد موقع الأول للصورة ثم الموقع التاني للصورة علما اني استعملت الكود التالي
procedure TForm1.n1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
edit3.Text:='n1';
edit1.Text:=inttostr(n1.left);
edit2.Text:=inttostr(n1.top);
If ssLeft in Shift Then
Begin
Xo := X;
Yo := Y;
edit1.Text:=inttostr(n1.left);
edit2.Text:=inttostr(n1.top);
io := TImage(Sender).Left div 50;
jo := TImage(Sender).Top div 50;
TImage(Sender).BringToFront;
End
End;
ثم
procedure TForm1.n1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
begin
If Xo<0 Then Exit;
If ssLeft in Shift then
Begin
TImage(Sender).Left := TImage(Sender).ClientToParent(Point(x,y)).X - Xo;
TImage(Sender).Top := TImage(Sender).ClientToParent(Point(x,y)).Y - Yo;
End;
end;
ثم
procedure TForm1.n1MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
edit4.Text:=inttostr(n1.left);
edit5.Text:=inttostr(n1.top);
end;
procedure TForm1.n1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
edit3.Text:='n1';
edit1.Text:=inttostr(n1.left);
edit2.Text:=inttostr(n1.top);
If ssLeft in Shift Then
Begin
Xo := X;
Yo := Y;
edit1.Text:=inttostr(n1.left);
edit2.Text:=inttostr(n1.top);
io := TImage(Sender).Left div 50;
jo := TImage(Sender).Top div 50;
TImage(Sender).BringToFront;
End
End;
ثم
procedure TForm1.n1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
begin
If Xo<0 Then Exit;
If ssLeft in Shift then
Begin
TImage(Sender).Left := TImage(Sender).ClientToParent(Point(x,y)).X - Xo;
TImage(Sender).Top := TImage(Sender).ClientToParent(Point(x,y)).Y - Yo;
End;
end;
ثم
procedure TForm1.n1MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
edit4.Text:=inttostr(n1.left);
edit5.Text:=inttostr(n1.top);
end;

