ultimo
Junior Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору boss911 Не получится, нужно создавать кастомные чекбоксы. Список задач формируется на странице выбора задач, так что если поместить чекбоксы задач на страницу выбора директории, чекбоксов не будет вообще. Создай TNewCheckListBox, добавь туда требуемые задачи, а в разделе Icons вместо Tasks напиши Check: <имя булевой функции> Должно получиться типа того Код: [CustomMessages] en.CreateStartMenuIcon=Create Start Menu Icon ru.CreateStartMenuIcon=Создать значок в меню Пуск [Files] ; NOTE: Don't use "Flags: ignoreversion" on any shared system files [Icons] Name: {userdesktop}\UltraISO; Filename: {app}\UltraISO.exe; WorkingDir: {app}; Check: DesktopIconChecked Name: {userprograms}\UltraISO; Filename: {app}\UltraISO.exe; WorkingDir: {app}; Check: StartMenuIconChecked [_Code] var CheckListBox : TNewCheckListBox; function DesktopIconChecked(): Boolean; begin Result := CheckListBox.Checked[1]; end; function StartMenuIconChecked(): Boolean; begin Result := CheckListBox.Checked[2]; end; function RemoveAccelChar(S: String): String; begin Result := S; StringChangeEx(Result, '&', '', True); end; procedure InitializeWizard(); begin CheckListBox := TNewCheckListBox.Create(WizardForm); CheckListBox.Parent := WizardForm.SelectDirPage; CheckListBox.Top := WizardForm.DirEdit.Top + WizardForm.DirEdit.Height + ScaleY(20); CheckListBox.Width := WizardForm.DirEdit.Width; CheckListBox.Height := ScaleY(100); CheckListBox.Flat := True; CheckListBox.AddGroup(CustomMessage('AdditionalIcons'), '', 0, nil); CheckListBox.AddCheckBox(RemoveAccelChar(CustomMessage('CreateDesktopIcon')), '', 1, True, True, False, True, nil); CheckListBox.AddCheckBox(RemoveAccelChar(CustomMessage('CreateStartMenuIcon')), '', 1, True, True, False, True, nil); end; |
|