Inno Setup:如何更改卸载背景颜色

Inno Setup: How to change uninstall background color

我正在尝试找出如何更改 UNINSTALLER 中底部面板的背景颜色以匹配我能够使用我在此处找到的信息为 INSTALLER 设置的颜色:Inno Setup: How to change background color 不幸的是,我一直无法找到任何方法来扩展该答案以也包括卸载页面。它非常适合安装,但是当我测试卸载时,我看到了这个:

在安装程序中,当下面板的背景颜色改变时,斜面标签的背景也随之改变,但我找不到卸载程序的类似设置。我查看了 CurPageID 值列表,none 似乎与卸载程序有关,但我希望它会被列出或使用与安装程序相同的设置。可悲的是,两者似乎都不是真的。

任何人都可以解释一下正确的方法吗?谢谢!

编辑:对于不想查看链接文章中的代码的任何人,这是我项目中现在的样子:

procedure CurPageChanged(CurPageID: Integer);
begin
  WizardForm.Color := WizardForm.InnerPage.Color;
end;

procedure InitializeWizard;
begin
  WizardForm.Color := clWhite;
end;

我最初在不注释掉 CurPageChanged 中的行的情况下尝试了它,然后我想,为什么不总是在页面更改时设置颜色。卸载页面仍然有一个灰色的下窗格。显然,代码不会影响它们 and/or 它们不是 WizardForm 页面。

编辑:当要求显示我尝试过的代码时,我添加了代码块。该块包括一些注释掉的行,这些行是以前尝试的一部分。这里有人认为不需要以前的尝试并将它们从我的 post 中删除。那么请问,"Why is SOME of my failed code appropriate but other parts of it are not? Or should I post every single individual version of the functions in the 20-something times I tweaked them before giving up and asking my question?"

相当于 InitializeWizard 的卸载程序是 InitializeUninstallProgressForm:

procedure InitializeUninstallProgressForm();
begin
  UninstallProgressForm.Color := clWhite;
end;


CurPageChanged 等价于 CurUninstallStepChangedUninstallProgressForm 在最初的 usAppMutexCheck 和最后的 usDone 步骤中不可用。

虽然你应该使用如上所示的 InitializeUninstallProgressForm