如何用鼠标实现image的移动? 我想实现类似acdess那样,用鼠标拖动大image,查了一下以前的资料,有个办法是把image放在label上,这样不太好,还有什么办法吗? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 把Image放在PaintBox中,然后在Image的MouseDown中设置一个Flag,在MouseUp中分别判断X轴,Y轴的位移量再更新Image的位置(Left,Top),清除Flag就可以了! unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls;type TForm1 = class(TForm) Image2: TImage; procedure Image2MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); procedure Image2MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); private { Private declarations } public { Public declarations } end;var Form1: TForm1; ImageRec:Timage; startX,startY:integer;implementation{$R *.dfm}procedure TForm1.Image2MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);begin imageRec:=(Sender as TImage); StartX:=X; StartY:=Y;end;procedure TForm1.Image2MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);var tempImage:Timage;begin if (ssLeft in Shift) then begin tempImage:=(Sender as Timage); tempImage.Left:=tempImage.Left+X-StartX; tempImage.Top:=tempImage.Top+Y-StartY; end;end;end. ImageRec:Timage;//这个东西没什么用处,删掉就可以... hook 注入后打开 一新窗体 紧急求助!lookup字段的内容过滤问题? 紧!! 自制BitBtn组件的bmp图片的存储问题? 论坛的大虾新年好!小第想结交朋友. 如何实现每页小计? 关于Access中日期的问题! 关于合作开发的问题 我打算用delphi写一个游戏“华容道”,请高手给点建议! 请问一下如何查看mscomm32.ocx控件是否注册 PL的网页如何实现自动提交?我用的填表方法是POST,控件是HttpCli 那位可提供水晶报表阿
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls;type
TForm1 = class(TForm)
Image2: TImage;
procedure Image2MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure Image2MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
private
{ Private declarations }
public
{ Public declarations }
end;var
Form1: TForm1;
ImageRec:Timage;
startX,startY:integer;implementation{$R *.dfm}
procedure TForm1.Image2MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
imageRec:=(Sender as TImage);
StartX:=X;
StartY:=Y;
end;procedure TForm1.Image2MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
var tempImage:Timage;
begin
if (ssLeft in Shift) then
begin
tempImage:=(Sender as Timage);
tempImage.Left:=tempImage.Left+X-StartX;
tempImage.Top:=tempImage.Top+Y-StartY;
end;
end;end.