Положение пользовательской формы относительно позиции WizardForm - PullRequest
0 голосов
/ 16 ноября 2018

Я создал пользовательскую форму для отображения страницы параметров, которую я пытаюсь расположить в центре, где бы ни находился 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 для свойства Position и установив свойства Left и Top, которыекажется, игнорируется.

Есть ли способ позиционировать это, как описано?

1 Ответ

0 голосов
/ 16 ноября 2018

Похоже, что он работает не так, как ожидалось.

Хотя, похоже, это работает:

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

enter image description here

...