ListView_SetItemState マクロ (commctrl.h)
リスト ビュー コントロール内の項目の状態を変更します。 このマクロを使用することも、LVM_SETITEMSTATE メッセージを明示的に送信することもできます。
構文
void ListView_SetItemState(
HWND hwndLV,
int i,
UINT data,
UINT mask
);
パラメーター
hwndLV
型: HWND
リスト ビュー コントロールのハンドル。
i
型: int
リスト ビュー項目のインデックス。 このパラメーターが -1 の場合、状態の変更はすべての項目に適用されます。
data
型: UINT
項目の新しい状態ビット。 mask パラメーターは、データ パラメーターの有効なビットを示します。 対応するビットが mask パラメーターに設定されていない場合、マクロは データ パラメーター内のビットを無視します。 下位バイトには、項目の状態を示すビット フラグのセットが含まれています。 このバイトは、次の値の組み合わせにすることができます。
価値 | 意味 |
---|---|
|
この項目は、切り取りと貼り付けの操作としてマークされます。 |
|
項目はドラッグ アンド ドロップ ターゲットとして強調表示されます。 |
|
項目にはフォーカスがあるため、標準のフォーカス四角形で囲まれています。 複数の項目を選択できますが、フォーカスを持つことは 1 つの項目だけです。 |
|
項目が選択されています。 選択した項目の外観は、フォーカスがあるかどうかと、選択に使用されるシステムの色によって異なります。 項目は、リスト ビュー コントロールにフォーカスがある場合、または LVS_SHOWSELALWAYS スタイルが使用されている場合にのみ、選択済みとして表示されます。 |
mask
型: UINT
設定またはクリアするパラメーター
戻り値
何一つ
備考
項目の状態値には、項目の状態を示すビット フラグのセットが含まれます。 状態の値には、項目の状態イメージとオーバーレイ イメージを示すイメージ リスト インデックスを含めることもできます。
mask パラメーターは変更する状態ビットを指定し、データ パラメーターはそれらのビットの新しい値を指定します。 アイテムの内部状態にビットを設定するには、マスク と データ パラメーターの両方で設定します。 アイテムの内部状態のビットをクリアするには、mask パラメーターに設定し、データ パラメーターでクリアします。 項目の内部状態を少し変更しない場合は、mask パラメーターでクリアします。
データ パラメーターのビット 8 から 11 は、コントロールのイメージ リスト内のオーバーレイ イメージの 1 から始まるインデックスを指定します。 フルサイズのアイコンイメージリストと小さなアイコンイメージリストの両方にオーバーレイ画像を含めることができます。 オーバーレイイメージは、アイテムのアイコン画像の上に重ね合わされます。 これらのビットが 0 の場合、項目にはオーバーレイ イメージがありません。 これらのビットを分離するには、LVIS_OVERLAYMASK マスクを使用します。 オーバーレイ インデックスを指定するには、INDEXTOOVERLAYMASK マクロを使用します。
データ パラメーターのビット 12 から 15 は、コントロールの状態イメージ リスト内のイメージの 1 から始まるインデックスを指定します。 状態イメージは、アプリケーション定義の状態を示す項目のアイコンの横に表示されます。 これらのビットが 0 の場合、項目には状態イメージがありません。 これらのビットを分離するには、LVIS_STATEIMAGEMASK マスクを使用します。 状態イメージ のインデックスを指定するには、INDEXTOSTATEIMAGEMASK マクロを使用します。
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | Windows Vista [デスクトップ アプリのみ] |
サポートされる最小サーバー | Windows Server 2003 [デスクトップ アプリのみ] |
ターゲット プラットフォーム の |
ウィンドウズ |
ヘッダー | commctrl.h |