与WizardForm位置相关的位置自定义表单

时间:2018-11-16 12:19:41

标签: inno-setup pascalscript

我创建了一个自定义表单来显示选项页,我试图将其放置在单击“选项”按钮时WizardForm所在的中心。我已经尝试了以下代码,但是没有按照说明进行定位。

[Code]
var
  OptionsWindowForm: TForm;

{ Show the Options window }
procedure ShowOptionsWindow;
begin
  OptionsWindowForm := TForm.Create(nil);
  with OptionsWindowForm do
    begin
      Parent := WizardForm;
      BorderStyle := bsDialog;
      Position := poMainFormCenter;
      ClientWidth := ScaleX(400);
      ClientHeight := ScaleY(140);
      Caption := '{#AppName} Options';
      ShowModal;
    end;
end;

我还尝试了poOwnerFormCenter的{​​{1}}属性,并设置了PositionLeft属性,这些属性似乎被忽略了。

有没有办法像描述的那样放置它?

1 个答案:

答案 0 :(得分:1)

它确实似乎没有按预期工作。

尽管这似乎可行:

OptionsWindowForm := TForm.Create(WizardForm); { Make WizardForm the owner }
with OptionsWindowForm do
begin
  Position := poOwnerFormCenter; { Center on the owner }
  { ... }
  ShowModal;
end;

enter image description here