如何减少 Inno Setup TInputQueryWizardPage (CreateInputQueryPage) 上两个输入框之间的行距
How to reduce the line spacing between two input boxes on Inno Setup TInputQueryWizardPage (CreateInputQueryPage)
我有一个包含 8 个用户输入的 TInputQueryWizardPage
页面。 wizard page has been increased 但所有值仍然不可见。有没有办法减少两个值之间的行间距,以便所有值都以当前向导大小显示?
使用 TInputQueryWizardPage.Edits
和 TInputQueryWizardPage.PromptLabels
访问控件并根据需要重新定位它们:
[Code]
procedure ReducePromptSpacing(Page: TInputQueryWizardPage; Count: Integer; Delta: Integer);
var
I: Integer;
begin
for I := 1 to Count - 1 do
begin
Page.Edits[I].Top := Page.Edits[I].Top - Delta * I;
Page.PromptLabels[I].Top := Page.PromptLabels[I].Top - Delta * I;
end;
end;
procedure InitializeWizard();
var
Page: TInputQueryWizardPage;
begin
Page := CreateInputQueryPage(wpWelcome,
'Personal Information', 'Who are you?',
'Please specify your name and the company for whom you work, then click Next.');
Page.Add('Prompt 1:', False);
Page.Add('Prompt 2:', False);
Page.Add('Prompt 3:', False);
Page.Add('Prompt 4:', False);
Page.Add('Prompt 5:', False);
ReducePromptSpacing(Page, 5, ScaleY(10));
end;
标准布局:
间距缩小10个像素的布局:
我有一个包含 8 个用户输入的 TInputQueryWizardPage
页面。 wizard page has been increased 但所有值仍然不可见。有没有办法减少两个值之间的行间距,以便所有值都以当前向导大小显示?
使用 TInputQueryWizardPage.Edits
和 TInputQueryWizardPage.PromptLabels
访问控件并根据需要重新定位它们:
[Code]
procedure ReducePromptSpacing(Page: TInputQueryWizardPage; Count: Integer; Delta: Integer);
var
I: Integer;
begin
for I := 1 to Count - 1 do
begin
Page.Edits[I].Top := Page.Edits[I].Top - Delta * I;
Page.PromptLabels[I].Top := Page.PromptLabels[I].Top - Delta * I;
end;
end;
procedure InitializeWizard();
var
Page: TInputQueryWizardPage;
begin
Page := CreateInputQueryPage(wpWelcome,
'Personal Information', 'Who are you?',
'Please specify your name and the company for whom you work, then click Next.');
Page.Add('Prompt 1:', False);
Page.Add('Prompt 2:', False);
Page.Add('Prompt 3:', False);
Page.Add('Prompt 4:', False);
Page.Add('Prompt 5:', False);
ReducePromptSpacing(Page, 5, ScaleY(10));
end;
标准布局:
间距缩小10个像素的布局: