Inno setup Inno设置-页面名称和描述标签中文本下的透明度

Inno setup Inno设置-页面名称和描述标签中文本下的透明度,inno-setup,Inno Setup,我想在这里的文本下增加透明度: 正如你所看到的,我有我不想要的黑色背景 问候。页面名称标签和页面描述标签是TNewStaticText组件。此组件不支持透明度。尽管TLabel组件在其他方面具有类似的功能,但它确实支持透明性(并且只支持主题窗口) 因此,您可以将这两个组件替换为等效的TLabel。然后,您需要确保,每当Inno安装程序更新原始组件时,新自定义组件的标题都会得到更新。对于这两个组件,这非常简单,因为它们只在页面更改时更新。因此,您可以从更新自定义组件 函数CloneStaticT

我想在这里的文本下增加透明度:

正如你所看到的,我有我不想要的黑色背景


问候。

页面名称标签和页面描述标签是
TNewStaticText
组件。此组件不支持透明度。尽管
TLabel
组件在其他方面具有类似的功能,但它确实支持透明性(并且只支持主题窗口)

因此,您可以将这两个组件替换为等效的
TLabel
。然后,您需要确保,每当Inno安装程序更新原始组件时,新自定义组件的标题都会得到更新。对于这两个组件,这非常简单,因为它们只在页面更改时更新。因此,您可以从更新自定义组件

函数CloneStaticTextToLabel(StaticText:TNewStaticText):TLabel;
开始
结果:=TLabel.Create(WizardForm);
Result.Parent:=StaticText.Parent;
Result.Left:=StaticText.Left;
Result.Top:=StaticText.Top;
Result.Width:=StaticText.Width;
Result.Height:=StaticText.Height;
Result.AutoSize:=StaticText.AutoSize;
Result.ShowAccelChar:=StaticText.ShowAccelChar;
Result.WordWrap:=StaticText.WordWrap;
Result.Font:=StaticText.Font;
StaticText.Visible:=False;
结束;
变量
PageDescriptionLabel:TLabel;
pagenamelab:TLabel;
过程初始化Wizard();
开始
{ ... }
{创建标准TNewStaticText组件的TLabel等效项}
PageNameLabel:=CloneStaticTextToLabel(WizardForm.PageNameLabel);
PageDescriptionLabel:=CloneStaticTextToLabel(WizardForm.PageDescriptionLabel);
结束;
过程CurPageChanged(CurPageID:Integer);
开始
{从标准隐藏组件更新自定义TLabel组件}
PageDescriptionLabel.Caption:=WizardForm.PageDescriptionLabel.Caption;
PageNameLabel.Caption:=WizardForm.PageNameLabel.Caption;
结束;


更简单的方法是更改原始标签的背景颜色:

是的。我安装了Unicode版本的Inno安装程序,一切正常。谢谢你所做的一切。