3
A
答えて
3
いいえ、Inno Setupはマルチカラム(チェック)リストボックスをサポートしていません。
しかし、あなただけで簡単に3つの別々のチェックリストボックスで、「追加タスクの選択」ページを標準のルックアンドフィールを持つカスタムページを実装することができます。その後、あなたはFiles
が好きセクションにカスタムタスクをバインドする代わりにTasks
parameterのCheck
parameterを使用することができ、Icons
など
[Files]
Source: "FileForSubTask_0_1.txt"; DestDir: "{app}"; Check: GetCustomTask(0, 1);
Source: "FileForSubTask_0_2.txt"; DestDir: "{app}"; Check: GetCustomTask(0, 2);
...
[Code]
var
CustomSelectTasksPage: TWizardPage;
TasksLists: array of TNewCheckListBox;
const
TaskColumns = 3;
procedure InitializeWizard();
var
TasksList: TNewCheckListBox;
I, GapWidth: Integer;
begin
CustomSelectTasksPage :=
CreateCustomPage(
wpSelectTasks, SetupMessage(msgWizardSelectTasks), SetupMessage(msgSelectTasksDesc));
SetArrayLength(TasksLists, TaskColumns);
GapWidth := ScaleX(16);
for I := 0 to TaskColumns - 1 do
begin
TasksList := TNewCheckListBox.Create(WizardForm);
TasksList.Width :=
(CustomSelectTasksPage.SurfaceWidth - (GapWidth * (TaskColumns - 1))) div
TaskColumns;
TasksList.Left := I * (TasksList.Width + GapWidth);
TasksList.Top := 0;
TasksList.Height := WizardForm.InnerNotebook.Height - ScaleY(8);
TasksList.BorderStyle := bsNone;
TasksList.Color := clBtnFace;
TasksList.ShowLines := False;
TasksList.MinItemHeight := ScaleY(22);
TasksList.ParentColor := True;
TasksList.WantTabs := True;
TasksList.Parent := CustomSelectTasksPage.Surface;
TasksLists[I] := TasksList;
end;
TasksLists[0].AddCheckBox('TASK 0:0', '', 0, False, True, False, False, nil);
TasksLists[0].AddCheckBox('Subtask 0:1', '', 1, False, True, False, False, nil);
TasksLists[0].AddCheckBox('Subtask 0:2', '', 1, False, True, False, False, nil);
TasksLists[1].AddCheckBox('TASK 1:0', '', 0, False, True, False, False, nil);
TasksLists[1].AddCheckBox('Subtask 1:1', '', 1, False, True, False, False, nil);
TasksLists[1].AddCheckBox('Subtask 1:2', '', 1, False, True, False, False, nil);
TasksLists[2].AddCheckBox('TASK 2:0', '', 0, False, True, False, False, nil);
TasksLists[2].AddCheckBox('Subtask 2:1', '', 1, False, True, False, False, nil);
TasksLists[2].AddCheckBox('Subtask 2:2', '', 1, False, True, False, False, nil);
end;
function GetCustomTask(ListIndex: Integer; TaskIndex: Integer): Boolean;
begin
Result := TasksLists[ListIndex].Checked[TaskIndex];
end;
関連する問題
- 1. Inno Setup - タスクページの「追加のショートカット」ラベルを非表示にする
- 2. Inno Setupの - AfterInstallアクションが複数回
- 3. Inno Setupのツール(WindowsのOS)ではInno Setupの
- 4. Inno Setup:インストーラ "Run As Administrator"を設定するには? Inno Setupので
- 5. Inno Setupから一度に複数のアプリケーションをインストールする
- 6. 複数の列に分割する方法は?
- 7. Inno Setupでユーザのデスクトップにデフォルトのパスをインストールする方法
- 8. 複数の値の後にTeraDataSQL列を分割する方法
- 9. Inno Setupでユーザーのアプリケーションデータフォルダを消去する方法は?
- 10. Inno SetupでExec'edプログラムの出力を取得する方法は?
- 11. Googleで複数の列を分割する方法
- 12. Inno Setupでのカスタムディスクスパン
- 13. Inno Setup - 'ProgramData'ディレクトリの定数ですか?
- 14. Inno Setupの:
- 15. inno setupのレジストリ
- 16. Inno Setupの複数の保存先フォルダに同じファイルをインストール
- 17. Inno Setup:[コード]から[実行]に変数を渡す方法
- 18. Inno Setupでリモートマシンのレジストリにアクセスする方法
- 19. Inno Setupの、Welcomeページを無効にする方法を
- 20. Inno Setupで.msiファイルを処理する方法は?
- 21. Inno Setup - インストール前にリリースノートを表示する方法は?
- 22. Rデータフレームで1列を複数の列に分割する方法
- 23. Inno Setup Pascalスクリプトコードをサブ関数/サブプロシージャに分割することはパフォーマンスに影響しますか?
- 24. Inno Setupのボタンにアクセスキーを追加する方法
- 25. 文字列を複数に分割する方法(WHERE INクエリ)
- 26. 複数の列に分割する
- 27. Inno SetupのissファイルにDLL関数を追加するには?
- 28. Rを複数のサブ部分に分割する方法
- 29. Oracleでの、and:delimiterを複数のレコードに分割する方法
- 30. multidplyrを使用するときに複数の列で分割する方法
ありがとうございました:) –