Share via


ListView_SortItems マクロ (commctrl.h)

アプリケーション定義の比較関数を使用して、リスト ビュー コントロールの項目を並べ替えます。 各項目のインデックスは、新しいシーケンスを反映するように変更されます。 このマクロを使用することも、 LVM_SORTITEMS メッセージを明示的に送信することもできます。

構文

void ListView_SortItems(
   hwndLV,
   _pfnCompare,
   _lPrm
);

パラメーター

hwndLV

種類: HWND

リスト ビュー コントロールへのハンドル。

_pfnCompare

種類: PFNLVCOMPARE

アプリケーション定義比較関数へのポインター。 比較関数は、2 つのリスト アイテムの相対順序を比較する必要があるたびに、並べ替え操作中に呼び出されます。

_lPrm

型: LPARAM

比較関数に渡されるアプリケーション定義値。

戻り値

なし

解説

比較関数の形式は次のとおりです。

int CALLBACK CompareFunc(LPARAM lParam1, LPARAM lParam2, LPARAM lParamSort);

lParam1 パラメーターは、比較対象の最初の項目に関連付けられた値です。および lParam2 パラメーターは、2 番目の項目に関連付けられている値です。 これらは、項目の LVITEM 構造体の lParam メンバーがリストに挿入されたときに指定された値です。 lParamSort パラメーターは、LVM_SORTITEMS メッセージに渡される値と同じです。

比較関数は、最初の項目が 2 番目の項目の前にある場合は負の値を返し、最初の項目が 2 番目の項目の後に続く場合は正の値を返し、2 つの項目が等価である場合は 0 を返す必要があります。

メモ 並べ替え処理中に、リスト ビューの内容が不安定になります。 コールバック関数がリスト ビュー コントロールにメッセージを送信すると、結果は予測できません。
 

要件

要件
サポートされている最小のクライアント Windows Vista [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2003 (デスクトップ アプリのみ)
対象プラットフォーム Windows
ヘッダー commctrl.h