在用INNO打包时,用WizardForm.BorderStyle:=bsNone;创建了一个新的无边框窗体,运用WizardForm.OnMouseDown:=@WizardFormMouseDown;函数后,新创建的窗体能用鼠标拖动。
其中WizardFormMouseDown函数是这样写的:
procedure WizardFormMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
if Nun <> wpInstalling then
begin
ReleaseCapture
SendMessage(WizardForm.Handle, WM_SYSCOMMAND, $F012, 0)
end;
end;
但是当我在这个新窗体中用ChangingImg := TBitmapImage.Create(WizardForm);创建新图片并加载后,发现在图片区域,鼠标拖动不了,请问这个是怎么回事,应该怎么做才能在图片区域拖动窗体
其中创建图片加载代码如下:
ChangingImg := TBitmapImage.Create(WizardForm);
ChangingImg.Parent := WizardForm;
ChangingImg.Left := ScaleX(0);
ChangingImg.Top := ScaleY(30);
ChangingImg.Width := ScaleX(634);
ChangingImg.Height := ScaleY(284);
ChangingImg.Stretch := True;
ChangingImg.Bitmap.LoadFromFile(ExpandConstant('{tmp}\MicrosoftClassic15.bmp'));
-----------------------------------------------------------
后来用插件botva2.dll的函数就能实现,如下:
function ImgLoad(Wnd :HWND; FileName :PAnsiChar; Left, Top, Width, Height :integer; Stretch, IsBkg :boolean) :Longint; external 'ImgLoad@files:botva2.dll stdcall';
请问这个函数是怎么实现的?怎么写这个代码?