angelbd

图片的漫游

 

把图片放在一个Panel里面,设置图片的AutoSize:=true,Cursor:=crHandPoint;
通过改变Panel的大小控制图片可见内容的范围。
然后在图片的OnMouseMove写相关代码,控制图片的Top,Left值。

 

var
CanMove : boolean;
X1, Y1 : integer;

procedure TForm1.Image1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
CanMove := True;
Image1.Cursor := crHandPoint;
X1 := X;
Y1 := Y;
end;

procedure TForm1.Image1MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
CanMove := False;
Image1.Cursor := crDefault;
end;

procedure TForm1.Image1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
begin
if CanMove then
begin
Image1.Left := Image1.Left + X - X1;
Image1.Top := Image1.Top + Y - Y1;
X1 := X;
Y1 := Y;
end;
end;

分类:

技术点:

相关文章:

  • 2021-10-16
  • 2021-04-29
  • 2022-01-19
  • 2021-07-29
  • 2021-12-13
  • 2021-08-06
  • 2022-12-23
  • 2022-02-12
猜你喜欢
  • 2021-07-18
  • 2022-12-23
  • 2021-09-16
  • 2021-12-04
  • 2021-11-08
  • 2021-09-11
  • 2021-06-26
相关资源
相似解决方案