Inno Setup TCheckBox 增加标题长度(15 个字符限制)
Inno Setup TCheckBox increase Caption length (15 character limit)
在自定义表单上创建 TCheckBox
时,Caption
属性.
中似乎只能显示 15 个字符的限制
[Code]
var
OptionsWindowForm: TForm;
{ Show the Options window }
procedure ShowOptionsWindow;
var
SlowNetworkLabel: TNewStaticText;
SlowNetworkCheckBox: TNewCheckBox;
begin
OptionsWindowForm := TForm.Create(nil);
with OptionsWindowForm do
begin
Parent := WizardForm;
BorderStyle := bsDialog;
Position := poScreenCenter;
ClientWidth := ScaleX(400);
ClientHeight := ScaleY(140);
Caption := '{#AppName} Options';
end;
{ Define the Slow Network checkbox }
SlowNetworkCheckBox := TNewCheckBox.Create(WizardForm);
with SlowNetworkCheckBox do
begin
Parent := OptionsWindowForm;
Left := OptionsLabel.Left + ScaleX(4);
Top := OptionsLabel.Top + ScaleY(20);
Caption := 'Slow Network Connection: Run Remotely';
Checked := False;
OnClick := @SlowNetworkCheckBoxClick;
end;
OptionsWindowForm.ShowModal;
end;
因此,在此示例中,显示的全部内容是 "Slow Network Co",之后文本被截断。有一个明显的解决方法是创建一个标签并将其覆盖在复选框旁边。
{ Define the Slow Network label }
SlowNetworkLabel := TNewStaticText.Create(WizardForm);
with SlowNetworkLabel do
begin
Parent := OptionsWindowForm;
Left := SlowNetworkCheckBox.Left + ScaleX(16);
Top := SlowNetworkCheckBox.Top + ScaleY(2);
Caption := 'Slow Network Connection: Run Remotely';
end;
然而,这样做的不利之处在于您只能单击复选框以 select 或取消 select 它。如果没有覆盖标签,复选框的标题文本也是可点击的。因此,这不是一个理想的解决方案,因为用户必须更准确地通过鼠标单击 select 复选框。因此,有没有办法增加字幕长度? 15 个字符似乎是一个非常重要的限制。
组合框没有 auto-size 及其标题(与 TLabel
相反)。
组合框尽可能宽。
with SlowNetworkCheckBox do
begin
Parent := OptionsWindowForm;
Width := Parent.ClientWidth - Left - ScaleX(8);
{ ... }
end;
在自定义表单上创建 TCheckBox
时,Caption
属性.
[Code]
var
OptionsWindowForm: TForm;
{ Show the Options window }
procedure ShowOptionsWindow;
var
SlowNetworkLabel: TNewStaticText;
SlowNetworkCheckBox: TNewCheckBox;
begin
OptionsWindowForm := TForm.Create(nil);
with OptionsWindowForm do
begin
Parent := WizardForm;
BorderStyle := bsDialog;
Position := poScreenCenter;
ClientWidth := ScaleX(400);
ClientHeight := ScaleY(140);
Caption := '{#AppName} Options';
end;
{ Define the Slow Network checkbox }
SlowNetworkCheckBox := TNewCheckBox.Create(WizardForm);
with SlowNetworkCheckBox do
begin
Parent := OptionsWindowForm;
Left := OptionsLabel.Left + ScaleX(4);
Top := OptionsLabel.Top + ScaleY(20);
Caption := 'Slow Network Connection: Run Remotely';
Checked := False;
OnClick := @SlowNetworkCheckBoxClick;
end;
OptionsWindowForm.ShowModal;
end;
因此,在此示例中,显示的全部内容是 "Slow Network Co",之后文本被截断。有一个明显的解决方法是创建一个标签并将其覆盖在复选框旁边。
{ Define the Slow Network label }
SlowNetworkLabel := TNewStaticText.Create(WizardForm);
with SlowNetworkLabel do
begin
Parent := OptionsWindowForm;
Left := SlowNetworkCheckBox.Left + ScaleX(16);
Top := SlowNetworkCheckBox.Top + ScaleY(2);
Caption := 'Slow Network Connection: Run Remotely';
end;
然而,这样做的不利之处在于您只能单击复选框以 select 或取消 select 它。如果没有覆盖标签,复选框的标题文本也是可点击的。因此,这不是一个理想的解决方案,因为用户必须更准确地通过鼠标单击 select 复选框。因此,有没有办法增加字幕长度? 15 个字符似乎是一个非常重要的限制。
组合框没有 auto-size 及其标题(与 TLabel
相反)。
组合框尽可能宽。
with SlowNetworkCheckBox do
begin
Parent := OptionsWindowForm;
Width := Parent.ClientWidth - Left - ScaleX(8);
{ ... }
end;