在 Inno Setup 的完成页面中更改重启选项单选按钮的位置
Change position of restart option radio buttons in Finished page of Inno Setup
如何更改这些控件的位置?
重新启动单选按钮似乎没有改变它的位置,即使您使用 .Top
更改它也是如此。
代码如下:
[Code]
procedure InitializeWizard;
begin
with WizardForm do
begin
{ NOT WORKING }
YesRadio.Top := ScaleY(450);
NoRadio.Top := ScaleY(750);
{ WORKING }
YesRadio.Left := ScaleX(200);
NoRadio.Left := ScaleX(200);
NoRadio.Checked := True;
end;
end;
此外,如果您添加此代码:
[Setup]
WizardStyle=modern
.Left
和 .Top
都不起作用。
YesRadio
和 NoRadio
的垂直位置是在“已完成”页面显示之前根据页面的其他内容(特别是 FinishedLabel
的高度计算的和 RunList
).
如果要覆盖位置,需要在 CurPageChanged
event function:
中进行
procedure CurPageChanged(CurPageID: Integer);
begin
if CurPageID = wpFinished then
begin
WizardForm.YesRadio.Top := ScaleY(450);
WizardForm.NoRadio.Top := ScaleY(750);
end;
end;
但请确保您知道自己在做什么,不要导致单选按钮与其他 动态 内容重叠。
如何更改这些控件的位置?
重新启动单选按钮似乎没有改变它的位置,即使您使用 .Top
更改它也是如此。
代码如下:
[Code]
procedure InitializeWizard;
begin
with WizardForm do
begin
{ NOT WORKING }
YesRadio.Top := ScaleY(450);
NoRadio.Top := ScaleY(750);
{ WORKING }
YesRadio.Left := ScaleX(200);
NoRadio.Left := ScaleX(200);
NoRadio.Checked := True;
end;
end;
此外,如果您添加此代码:
[Setup]
WizardStyle=modern
.Left
和 .Top
都不起作用。
YesRadio
和 NoRadio
的垂直位置是在“已完成”页面显示之前根据页面的其他内容(特别是 FinishedLabel
的高度计算的和 RunList
).
如果要覆盖位置,需要在 CurPageChanged
event function:
procedure CurPageChanged(CurPageID: Integer);
begin
if CurPageID = wpFinished then
begin
WizardForm.YesRadio.Top := ScaleY(450);
WizardForm.NoRadio.Top := ScaleY(750);
end;
end;
但请确保您知道自己在做什么,不要导致单选按钮与其他 动态 内容重叠。