ListView コントロール

1 列の値と各項目の横にアイコンを表示する ListView コントロール。 これにより、ユーザーは、事前に定義されたリストからプロパティの単一の文字列または整数値を選択できます。 可能な値は ListView テーブルから読み取られます。 コントロールを整数または文字列値に関連付けるには、Control テーブルの Property 列にプロパティ名を入力します。

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

コントロールの属性

このコントロールでは次の属性を使用できます。 イベントを使用して属性の値を変更するには、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 の値です。 属性が変更された場合、コントロールは新しい値を反映します。
テキスト スクリーン リーダーにテキストを表示するには、Control テーブルの Text 列にテキストを入力します。 「アクセシビリティ」を参照してください。
[表示] 0x00000000 0x00000001
表示されないコントロール。 表示されるコントロール。
コントロールの作成時にコントロールを表示可能にするか非表示にするかを設定するには、Control テーブルの Attributes 列のビット ワードにこのビットを含めます。
ControlCondition テーブルを使って、コントロールの非表示または表示を設定することもできます。
有効 0x00000000 0x00000002
無効状態のコントロール。 有効状態のコントロール。
作成時にコントロールを有効にするには、Control の Attributes 列のビット ワードにこのビットを含めます。
ControlCondition テーブルを使用して、コントロールを有効または無効にすることもできます。
Sunken 0x00000000 0x00000004
既定の表示スタイルを表示します。 浮き彫りの 3-D の外観を使用してコントロールを表示します。
Control テーブルの Attributes 列のビット ワードにこれらのビットを含めます。
間接 0x00000000 0x00000008
コントロールは、Control テーブルの Property 列内にあるプロパティの値を表示または変更します。 コントロールは、Control テーブルの Property 列に記載されている識別子を持つプロパティの値を表示または変更します。
このコントロールに関連付けられているプロパティが間接的に参照されるかどうかを決定します。
整数 0x00000000 0x00000010
コントロールに関連付けられているプロパティは、文字列値です。 コントロールに関連付けられているプロパティは、整数値です。
コントロールの作成時にこの属性を設定するには、Control テーブルの Attributes 列のビット ワードにこのビットを含めます。
RTLRO 0x00000000 0x00000020
コントロール内のテキストは、左から右への読み取り順序で表示されます。 コントロール内のテキストは、右から左への読み取り順序で表示されます。
RightAligned 0x00000000 0x00000040
コントロール内のテキストは、左揃えになります。 コントロール内のテキストは、右揃えになります。
LeftScroll 0x00000000 0x00000080
スクロール バーは、コントロールの右側に配置されます。 スクロール バーは、コントロールの左側に配置されます。
BiDi 0x000000E0 RTLRORightAlignedLeftScroll の各属性の組み合わせに対してこの値を設定します。
Sorted 0x00000000 0x00010000
項目はアルファベット順に表示されます。 項目は ListView テーブルで指定された順序で表示されます。
ListView テーブルの Order 列で指定された順序で項目を表示するには、Attributes 列のビット ワードにこのビットを含めます。
FixedSize 0x00000000 0x00100000
コントロールに合わせてアイコン画像を拡大します。 コントロール内のアイコン画像をトリミングするか、中央に表示します。
Control テーブルの Attributes 列のビット ワードにこのビットを含めます。
IconSize 0x00000000 0x00200000
0x00400000
0x00600000
最初の画像を読み込みます。 最初の 16 x 16 画像を読み込みます。
最初の 32 x 32 画像を読み込みます。
最初の 48 x 48 画像を読み込みます。
アイコン ファイルには、同じアイコンのさまざまなサイズの画像を含めることができます。 Control テーブルの Attributes 列に適切なビット ワードの値を含めます
これらのビットが設定されていない場合、インストーラーで FixedSize 属性は無視され、画像はコントロールの四角形に合わせて拡大されます。 IconSize ビットと FixedSize ビットの両方が設定されている場合、コントロールよりも小さい画像は中央に配置され、コントロールよりも大きい画像は収まるように縮小されます。

 

解説

このコントロールは、CreateWindowEx 関数を使用して、WC_LISTVIEW クラスから作成できます。 LVS_REPORTLVS_NOCOLUMNHEADERWS_VSCROLLWS_HSCROLLLVS_SHAREIMAGELISTSLVS_SINGLESELLVS_SHOWSELALWAYSWS_BORDER、および WS_TABSTOP の各スタイルがあります。 Sorted スタイル ビットがオンでない場合、コントロールには LVS_SORTASCENDING スタイルもあります。

スクリーン リーダーとの互換性を保つには、ListView コントロールを最初のアクティブ コントロールとして設定したダイアログを作成するときに、編集フィールドに属するテキスト フィールドを Dialog テーブルの最初のアクティブ なコントロールにする必要があります。 静的テキストにフォーカスを移すことができないので、ダイアログが作成されると、意図したとおりに編集フィールドに最初にフォーカスが設定されますが、こうすることでスクリーン リーダーで正しい情報が表示されるようになります。