SelectionTree コントロール

このコントロールを使用すると、ユーザーは、フィーチャー テーブルのに一覧表示されている機能の選択状態を変更できます。 コントロールは、参照ダイアログによってユーザーが設定できる文字列値プロパティに関連付けられています。 Control テーブルの [プロパティ] 列にプロパティの名前を入力して、コントロールをプロパティ関連付けることができます。

SelectionTree コントロールは、Windows XP 以前のオペレーティング システムで次の コントロール イベント を自動的に発行します。 SelectionTree コントロールは、選択した項目がノード間で変更されたときに、これらのイベントを発行します。 選択ツリーにノードがない場合、コントロールはこれらのイベントを発行し、イベントをサブスクライブするコントロールの内容を消去します。 これらの ControlEvent は、ControlEvent テーブルに一覧表示する必要はありません。

コントロール イベント 形容
SelectionAction の 強調表示されている項目を説明 、 UIText テーブルから文字列を発行します。
SelectionBrowse の 強調表示されている項目のパスを変更するために使用する [参照] ダイアログ ボックスを生成します。
SelectionDescription の 強調表示された項目を説明する フィーチャー テーブルから文字列を発行します。
SelectionNoItems の 説明テキストを削除するか、古いアイテムのボタンを無効にします。
SelectionPath の 強調表示されている項目のパスを発行します。
SelectionPathOn の 現在選択されているフィーチャに関連付けられている選択パスがあるかどうかを公開します。
SelectionSize 強調表示されている項目のサイズを発行します。

 

Windows Server 2003 システム以降、SelectionTree コントロールは上記の表のすべてのイベントを発行し、さらに、DoAction ControlEvent または SetProperty ControlEventを発行します。 DoAction または SetProperty ControlEvents を発行するには、ControlEvent テーブル レコードを追加する必要があります。

コントロール イベント 形容
DoAction カスタム アクションを実行するようにインストーラーに通知します。
SetProperty の プロパティを新しい値に設定します。

 

Windows インストーラー バージョン 3.0 以降、SelectionTree コントロールは、ControlEvent テーブルに一覧表示 カスタム アクション 実行するイベントを発行します。 SelectionTree コントロールは、コントロール内で機能の選択が変更されたとき、または現在のフィーチャに対して別の選択状態が選択されるたびに、このイベントを発行します。 カスタム アクションは、イベントが発行されるたびに実行されます。 SelectionTree コントロールは、次のプロパティの値を設定して、カスタム アクションに情報を送信します。 SelectionTree コントロールを閉じると、これらすべてのプロパティがクリアされます。

Windows インストーラー 2.0: サポートされていません。 SelectionTree コントロールはイベントを発行せず、次のプロパティを設定しません。

財産 形容
MsiSelectionTreeSelectedFeature フィーチャ テーブルの [フィーチャ] フィールドで選択したフィーチャの名前。
MsiSelectionTreeSelectedAction 選択した機能のインストール アクションの状態。 値は、INSTALLSTATE_ABSENT、INSTALLSTATE_LOCAL、INSTALLSTATE_SOURCE、またはINSTALLSTATE_ADVERTISEDにすることができます。
MsiSelectonTreeChildrenCount 直接子ノードの数。
MsiSelectionTreeInstallingChildrenCount INSTALLSTATE_LOCAL、INSTALLSTATE_SOURCE、またはINSTALLSTATE_ADVERTISEDされている直接子ノードの数。
MsiSelectionTreeSelectedCost 選択した機能を 512 バイト単位でインストールするコスト。
MsiSelectionTreeChildrenCost すべての子機能を 512 バイト単位でインストールするコスト。
MsiSelectionTreeSelectedPath 選択した機能がインストールされているパス。 機能がINSTALLSTATE_LOCALとしてインストールされている場合にのみ定義されます。

 

手記

コントロール テーブル の [テキスト] フィールドの内容は、SelectionTree コントロールには表示されません。 代わりに、このフィールドは、コントロールによって表示されるテキストのスタイルを指定し、画面レビュー ユーティリティで使用されるコントロールの説明を含みます。 テキスト文字列のフォントとフォント スタイルを設定するには、表示される文字の文字列の先頭に {\style} または {&スタイル} を付けます。 ここで、style は、TextStyle テーブルの TextStyle 列に一覧表示される識別子です。 どちらも存在しないが、DefaultUIFont プロパティが有効なテキスト スタイルとして定義されている場合は、そのフォントが使用されます。 この後の情報は、コントロールの説明として画面レビュー ユーティリティによって読み取られます。 アクセシビリティ を参照してください。

 

コントロール属性

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

属性識別子 16 進数ビット 形容
IndirectPropertyName コントロールに関連付けられている間接プロパティの名前。 間接属性ビットが設定されている場合、コントロールは、この名前を持つプロパティの値を表示または変更します。 間接属性ビットが設定されている場合、この名前は、Control テーブルの [プロパティ] 列に表示されるプロパティの値。
位置 ダイアログ ボックス内のコントロールの位置。 コントロールの左隅のコントロールの幅、高さ、および座標を、Control テーブルの [幅]、[高さ]、[X]、および [Y] 列に入力。 長さと距離 インストーラー ユニットを使用します。
PropertyName このコントロールに関連付けられているプロパティの名前。 Indirect 属性ビットが設定されていない場合、コントロールは、この名前を持つプロパティの値を表示または変更します。 この属性は、コントロール テーブルの [プロパティ] 列で指定します。
PropertyValue このコントロールによって表示または変更されたプロパティの現在の値。 間接属性ビットが設定されていない場合、これは PropertyName の値です。 Indirect 属性ビットが設定されている場合、これは IndirectPropertyName の値です。 属性が変更されると、コントロールには新しい値が反映されます。
テキスト コントロール テーブルの [テキスト] 列に入力されたテキストに従って、スクリーンリーダーのテキスト表示します。 アクセシビリティ を参照してください。
表示 0x00000000 0x00000001
非表示のコントロール。 表示コントロール。
コントロールを作成時に表示または非表示にするには、コントロール テーブルの の [属性] 列のビット ワードにこのビットを含めます。
ControlCondition テーブルを使用して、コントロールを非表示または表示することもできます。
Enabled 0x00000000 0x00000002
無効な状態のコントロール。 有効な状態での制御。
作成時にコントロールを有効にするには、コントロール の [属性] 列のビット ワードにこのビットを含めます。
ControlCondition テーブルを使用して、コントロールを有効または無効にすることもできます。
沈没 0x00000000 0x00000004
既定の表示スタイルを表示します。 沈んだ 3D の外観でコントロールを表示します。
これらのビットは、コントロール テーブルの [属性] 列のビット ワード含めます。
間接 の 0x00000000 0x00000008
コントロールは、コントロール テーブルの Property 列にプロパティの値を表示または変更します。 コントロールは、コントロール テーブルの [プロパティ] 列に識別子が表示されているプロパティの値を表示または変更します。
このコントロールに関連付けられているプロパティが間接的に参照されているかどうかを判断します。
RTLRO を する 0x00000000 0x00000020
コントロール内のテキストは、左から右の読み取り順序で表示されます。 コントロール内のテキストは、右から左の読み取り順序で表示されます。
RightAligned を する 0x00000000 0x00000040
コントロール内のテキストは左に配置されます。 コントロール内のテキストが右側に配置されます。
LeftScroll を する 0x00000000 0x00000080
スクロール バーはコントロールの右側にあります。 スクロール バーはコントロールの左側にあります。
BiDi 0x000000E0 この値は、RTLRO、rightAligned 、および LeftScroll 属性の組み合わせ 設定します。

 

備考

このコントロールは、CreateWindowEx 関数を使用して、WC_TREEVIEW クラスから作成できます。 WS_BORDER、TVS_HASLINES、TVS_HASBUTTONS、TVS_LINESATROOT、TVS_DISABLEDRAGDROP、TVS_SHOWSELALWAYS、WS_CHILD、WS_TABSTOP、および WS_GROUP スタイルがあります。

選択ツリーは、CostInitialize アクション と CostFinalize アクション 呼び出された場合にのみ設定されます。

UIText テーブル の次の文字列は、このコントロールに関連しています。

用語 形容
AbsentPath の
存在しない状態の項目に対して表示されるパス。

 

次の 6 つの文字列を使用して、選択した子の数と、強調表示されている項目に関連付けられているサイズを表示します。

  • SelChildCostPos
  • SelChildCostNeg
  • SelParentCostPosPos
  • SelParentCostPosNeg
  • SelParentCostNegPos
  • SelParentCostNegNeg

次の文字列を使用して、ポップアップ メニューの項目に対して使用可能な選択オプションを表示します。

  • MenuAbsent
  • MenuLocal
  • MenuCD
  • MenuNetwork
  • MenuAllLocal
  • MenuAllCD
  • MenuAllNetwork

次の文字列は、SelectionDescription ControlEvent での現在の選択を説明するために使用されます。

  • SelAbsentAbsent
  • SelAbsentLocal
  • SelAbsentCD
  • SelAbsentNetwork
  • SelLocalAbsent
  • SelLocalLocal
  • SelLocalCD
  • SelLocalNetwork
  • SelCDAbsent
  • SelNetworkAbsent
  • SelCDLocal
  • SelNetworkLocal
  • SelCDCD
  • SelNetworkNetwork

次の 4 つのローカライズされた文字列は、ファイルのサイズの書式設定に使用されます。

  • バイト
  • KB
  • MB
  • GB