在 Inno Setup 中使用字体大小缩放单选按钮列表

Mel*_*ena 2 inno-setup pascalscript

当尝试使用单选按钮应用自定义安装掩码时(我使用了通过单选按钮替换安装类型下拉列表中提供的代码)我看到我无法使用更高的字体,因为一个单选按钮字段和另一个单选按钮字段之间应该需要一点间距. 给你一个直观的例子:

在此处输入图片说明

由于默认字体大小不太容易阅读,我想知道是否有一种方法可以在一个单选按钮字段和下一个单选按钮字段之间添加额外的间距。

Mar*_*ryl 6

在 Inno Setup 运行时创建的复选框和单选按钮不会使用 DPI/字体大小自动缩放其高度。

在此处输入图片说明

所以你必须以编程方式扩展它们。

...
RadioButton.Left := WizardForm.TypesCombo.Left; 
RadioButton.Height := ScaleY(RadioButton.Height);
RadioButton.Top := WizardForm.TypesCombo.Top + I * RadioButton.Height;
...
Run Code Online (Sandbox Code Playgroud)

ScaleY(RadioButton.Height)采用默认组合框/单选按钮的高度,这被设计为默认字体和没有显示比例(100%)和尺度上的自定义字体和实际显示缩放。

在此处输入图片说明


但请注意,为您的应用程序/设置使用非默认字体大小并不是一个好主意。用户应该在 Windows 首选项中选择一个他/她喜欢的字体大小。你不应该推翻他/她的选择。


更改字体大小时,不要修改 shared default.isl,而是使用项目文件的[LangOptions]部分

[LangOptions]
DialogFontSize=20
Run Code Online (Sandbox Code Playgroud)