DirectoryCombo コントロール

DirectoryCombo コントロールでは、PathEdit コントロールに現在表示されているパスの一部が表示されます。 このコントロールにはパスの最後のセグメントは表示されず、そのセグメントは DirectoryList コントロールによって表示されます。

DirectoryCombo コントロールには、利用可能なすべてのボリューム (アルファベット順)、および現在のパスの階層ステップが表示されます。 選択したパスに存在しないフォルダーが含まれている場合、それらのファイルは別のアイコンで表示されます。 表示されるボリュームの種類は、RemovableVolumeFixedVolumeRemoteVolumeCDROMVolumeRAMDiskVolumeFloppyVolume コントロールに関連付けられているビットを使用して指定されます。

PathEdit、DirectoryCombo、DirectoryList の各コントロールは、同じ文字列値プロパティに関連付けられます。 このプロパティは、ユーザーが選択したパスです。 Control テーブルの Property 列にプロパティの名前を入力します。 このプロパティには、少なくとも 1 つのボリュームと 1 つのサブレベルを含む初期値が必要です。 Property テーブルの Value 列で、プロパティの初期値を指定します。

このコントロールは、PathEditDirectoryList コントロールと共に参照ダイアログで使用することを目的としています。

コントロールの属性

このコントロールでは次の属性を使用できます。 イベントを使用して属性の値を変更するには、EventMapping テーブルの ControlEvent にコントロールをサブスクライブし、Attribute 列に属性の識別子を記載します。 Event 列に ControlEvent の識別子を入力します。

属性識別子 16 進数ビット 説明
IndirectPropertyName これは、コントロールに関連付けられている間接プロパティの名前です。 Indirect 属性ビットが設定されている場合、コントロールは、この名前を持つプロパティの値を表示または変更します。 Indirect 属性ビットが設定されている場合、この名前は、Control テーブルの Property 列に記載されているプロパティの値でもあります。
Position ダイアログ ボックス内のコントロールの位置。 Control テーブルの Width、Height、X、Y の各列に、コントロールの幅、高さ、左隅の座標を入力します。 長さと距離にはインストーラー単位を使用します。
PropertyName これは、このコントロールに関連付けられているプロパティの名前です。 Indirect 属性ビットが設定されていない場合、コントロールは、この名前を持つプロパティの値を表示または変更します。 この属性は、Control テーブルの Property 列で指定されます。
PropertyValue このコントロールによって表示または変更されるプロパティの現在の値。 Indirect 属性ビットが設定されていない場合、これは PropertyName の値です。 Indirect 属性ビットが設定されている場合、これは IndirectPropertyName の値です。 属性が変更された場合、コントロールは新しい値を反映します。
テキスト テキスト文字列のフォントとフォント スタイルを設定するには、表示される文字の文字列の先頭に {\style} または {&style} を付けます。 ここで、style は、TextStyle テーブルの TextStyle 列に記載されている識別子です。 これらのどちらも存在しないが、DefaultUIFont プロパティが有効なテキスト スタイルとして定義されている場合は、そのフォントが使用されます。
[表示] 0x00000000 0x00000001
表示されないコントロール。 表示されるコントロール。
コントロールの作成時にコントロールを表示可能にするか非表示にするかを設定するには、Control テーブルの Attributes 列のビット ワードにこのビットを含めます。
ControlCondition テーブルを使って、コントロールの非表示または表示を設定することもできます。
有効 0x00000000 0x00000002
無効状態のコントロール。 有効状態のコントロール。
作成時にコントロールを有効にするには、Control テーブルの Attributes 列のビット ワードにこのビットを含めます。
ControlCondition テーブルを使用して、コントロールを有効または無効にすることもできます。
Sunken 0x00000000 0x00000004
既定の表示スタイルを表示します。 浮き彫りの 3D の外観を使用してコントロールを表示します。
Control テーブルの Attributes 列のビット ワードにこれらのビットを含めます。
間接 0x00000000 0x00000008
コントロールは、Control テーブルの Property 列内にあるプロパティの値を表示または変更します。 コントロールは、Control テーブルの Property 列に記載されている識別子を持つプロパティの値を表示または変更します。
このコントロールに関連付けられているプロパティが間接的に参照されるかどうかを決定します。
RTLRO 0x00000000 0x00000020
コントロール内のテキストは、左から右への読み取り順序で表示されます。 コントロール内のテキストは、右から左への読み取り順序で表示されます。
RightAligned 0x00000000 0x00000040
コントロール内のテキストは、左揃えになります。 コントロール内のテキストは、右揃えになります。
LeftScroll 0x00000000 0x00000080
スクロール バーは、コントロールの右側に配置されます。 スクロール バーは、コントロールの左側に配置されます。
BiDi 0x000000E0 RTLRORightAlignedLeftScroll の各属性の組み合わせに対してこの値を設定します。
RemovableVolume 0x00010000 コントロールにリムーバブル ドライブの一覧を表示します。 Control テーブルの Attributes 列のビット ワードに含めます。
FixedVolume 0x00020000 コントロールに固定内蔵ハード ドライブの一覧を表示します。 Control テーブルの Attributes 列のビット ワードに含めます。
RemoteVolume 0x00040000 コントロールにリモート ボリュームの一覧を表示します。 Control テーブルの Attributes 列のビット ワードに含めます。
CDROMVolume 0x00080000 コントロールに CD-ROM ボリュームの一覧を表示します。 Control テーブルの Attributes 列のビット ワードに含めます。
RAMDiskVolume 0x00100000 コントロールに RAM ディスクの一覧を表示します。 Control テーブルの Attributes 列のビット ワードに含めます。
FloppyVolume 0x00200000 コントロールにフロッピー ドライブの一覧を表示します。 Control テーブルの Attributes 列のビット ワードに含めます。

解説

このコントロールは、CreateWindowEx 関数を使って、COMBOBOX クラスから作成できます。 CBS_DROPDOWNLISTCBS_OWNERDRAWFIXEDCBS_HASSTRINGSWS_CHILDWS_GROUPWS_TABSTOPWS_VSCROLL のスタイルがあります。