Para podermos fazer nosso teste, coloque um TPanel no seu form.
Declare as seguintes variáveis no public:
Agora defina os eventos como abaixo:
public MouseDownSpot : TPoint; Capturing : bool; { Public declarations } end;
Agora é só testar os eventos!
procedure TForm1.Panel1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin Capturing := true; MouseDownSpot.X := x; MouseDownSpot.Y := Y; end; procedure TForm1.Panel1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); begin if Capturing then begin panel1.Left:= panel1.Left-(MouseDownSpot.x-x); panel1.Top:= panel1.Top - (MouseDownSpot.y-y); end; end; procedure TForm1.Panel1MouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin if Capturing then begin Capturing := false; Panel1.Left := panel1.Left - (MouseDownSpot.x -x); Panel1.Top := panel1.Top - (MouseDownSpot.y - y); end; end;
[ Fonte ]
0 comentários:
Postar um comentário