Inno Setup Disable复选框为选中状态

时间:2018-07-10 08:02:11

标签: inno-setup

如果要选中另一个复选框,我需要禁用一些复选框。
我怎样才能做到这一点?

这是我的代码:

procedure InitializeWizard();
begin
  AddonPage:= CreateCustomPage(wpSelectTasks,'','Please choose BlueDose preference:');

  CheckListBox := TNewCheckListBox.Create(AddonPage);
  CheckListBox.BorderStyle := bsNone;
  CheckListBox.ParentColor := True;
  CheckListBox.MinItemHeight := WizardForm.TasksList.MinItemHeight;
  CheckListBox.ShowLines := False;
  CheckListBox.WantTabs := True;
  CheckListBox.Parent := AddonPage.Surface;
  CheckListBox.AddGroup('Select Language:', '', 0, nil);
  CheckListBox.AddCheckBox('Italian', '', 0, False, True, False, true, nil);
  CheckListBox.AddCheckBox('English', '', 0, False, True, False, true, nil);
end;

1 个答案:

答案 0 :(得分:1)

您似乎根本不需要复选框,而需要单选按钮:

CheckListBox.AddRadioButton('Italian', '', 0, False, True, nil);
CheckListBox.AddRadioButton('English', '', 0, False, True, nil);

enter image description here


您还可以考虑使用CreateInputOptionPage代替通用CreateCustomPage。您的代码将更加简单:

var
  AddonPage: TInputOptionWizardPage;

procedure InitializeWizard();
begin
  AddonPage :=
    CreateInputOptionPage(
      wpSelectTasks, '', 'Please choose BlueDose preference:', 'Select language',
      True, False);

  AddonPage.Add('Italian');
  AddonPage.Add('English');
end;

enter image description here