在C中使用List View進行排序的方法如下:
1. 首先,定義一個callback函數來進行比較排序。該函數可以根據需要自定義比較規則。
```c
int CALLBACK CompareFunc(LPARAM lParam1, LPARAM lParam2, LPARAM lParamSort)
{
// 根據需要自定義比較規則
// lParamSort可以在ListView控件的SortItems函數中傳遞
// 需要將lParam1和lParam2轉換為自定義結構體類型,然后進行比較
}
```
2. 在創建ListView控件之前,設置List View控件的比較函數。
```c
LV_COLUMN lvCol;
lvCol.mask = LVCF_SUBITEM | LVCF_TEXT | LVCF_WIDTH;
lvCol.pszText = "Column 1";
lvCol.cx = 100;
ListView_InsertColumn(hListView, 0, &lvCol);
lvCol.pszText = "Column 2";
lvCol.cx = 100;
ListView_InsertColumn(hListView, 1, &lvCol);
// 設置List View控件的比較函數
ListView_SetCallbackMask(hListView, LVIS_SELECTED);
ListView_SetCompareCallback(hListView, CompareFunc, 0);
```
3. 在需要對ListView進行排序的地方調用SortItems函數。
```c
// 使用自定義的比較函數進行排序
// lParamSort可以用來傳遞額外的參數,在CompareFunc函數中使用
ListView_SortItems(hListView, CompareFunc, lParamSort);
```
通過以上步驟,你可以在C中使用List View對ListView進行排序。