我想在运行时禁用或隐藏组件选择之一。我创建了一个带有两个单选按钮的自定义向导页面。如果选择了第一个单选按钮,我希望其中一个组件(CustomInstall)不出现或至少被禁用。

当然,自定义页面出现在“组件”页面之前。

我尝试使用Check:参数来执行此操作,但是似乎[Components]部分是在启动时(而不是在显示页面时)进行评估的。

因此,我的下一个想法是向我的CurPageChanged()添加一些代码,以便可以从CheckListBox中删除或禁用该项目(我认为这称为ComopnentsList),但是在TNewCheckListBox上找不到任何文档。

有人对这个类了解更多吗?我的想法会起作用吗?

最佳答案

这就是我最终要做的事情:

if CurPageID=wpSelectComponents then
begin
  if ExtraOptionAvailable() then
  begin
    Wizardform.ComponentsList.Checked[6] := true;
    Wizardform.ComponentsList.ItemEnabled[6] := true;
  end else begin
    Wizardform.ComponentsList.Checked[6] := false;
    Wizardform.ComponentsList.ItemEnabled[6] := false;
  end;
end;

http://www.jrsoftware.org/newsgroups.php上搜索Inno Setup新闻组非常有帮助。

10-05 22:26