2
我想通过将BorderStyle
设置为bsNone
来制作具有自定义外观的安装程序并禁用了标题栏。如果标题栏被禁用,使Inno Setup WizardForm可移动
现在我不能再移动窗口了。我环顾四周,找到了Delphi的解决方案:
http://www.chami.com/tips/delphi/010397D.html
这可以在Inno Setup中完成吗?
我已经查阅了MSDN上的WM_NCHITTEST
这个东西,但我无法弄清楚是否以及如何使这项工作。
编辑:环顾四周,编译它使用advanced compiler先进的编译器,我想出了这个,但它不起作用。它编译,但当我点击窗口内,我不能拖动它。
procedure Dragg(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
SendMessage(WizardForm.Handle, $F112, $F012, 0);
end;
procedure InitializeWizard();
begin
WizardForm.OnMouseDown := @Dragg;
end;
这不是完全不可能,但这需要一个外部DLL的帮助下,子类主Inno窗口。这就是疯狂,和/或斯巴达。 – Miral
@Miral,yup,这就是为什么我通过*没有一些外部库文件*结束这篇文章的原因* :-) – TLama
哦,是的,我忘了提及我使用restools.hanzify.org上提供的advenced编译器,它能够处理鼠标停止事件以及标准编译器缺少的许多其他功能。它包含一个显示所有支持类的txt文件。你可以在这里得到它:http://restools.hanzify.org/article.asp?id=89 – user1662035