首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

用Graphics32->TImgView32组件,实现图像拖动?谢谢

2012-03-19 
用Graphics32-TImgView32组件,实现图像拖动?多谢想导入一张bitmap图片,图片比较大,要能像ACDSee那样拖动,

用Graphics32->TImgView32组件,实现图像拖动?多谢
想导入一张bitmap图片,图片比较大,要能像ACDSee那样拖动,应该怎么做呢?

[解决办法]

procedure TForm1.ImageMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer; Layer: TCustomLayer);
begin
if Button = mbLeft then
begin
OldMousePos := Point(X, Y);
MouseDragging := True;
Image.Cursor := crSizeAll;
end
{$IFNDEF CLX}
else ReleaseCapture;
{$ENDIF}
end;

procedure TForm1.ImageMouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer; Layer: TCustomLayer);
begin
if MouseDragging then
begin
Image.Scroll(OldMousePos.X - X, OldMousePos.Y - Y);
OldMousePos := Point(X, Y);
Image.Update;
end;
end;

procedure TForm1.ImageMouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer; Layer: TCustomLayer);
begin
if Button = mbLeft then
begin
MouseDragging := False;
Image.Cursor := crDefault;
end;
end;
[解决办法]
examples 下的 ByteMaps_Ex.dpr

热点排行