Bonjour,
je voudrai utiliser la fonction ListView_FindItem() dans une autre colonne que la 1ère . voila mon code qui ne fonctionne pas :
//struct LVITEM
LVITEM LvItem;
LvItem.mask = LVIF_PARAM | LVIF_TEXT;
LvItem.iItem = 0;
LvItem.iSubItem = 2;
LvItem.pszText = "abc";
LvItem.lParam = 0;
//struct LVFINDINFO
LVFINDINFO lvFindInfo;
lvFindInfo.flags = LVFI_PARAM | LVFI_STRING;
lvFindInfo.psz = "abc";
lvFindInfo.lParam = (LPARAM)(&LvItem);
int indexFind = ListView_FindItem(GetDlgItem(hWnd, C_LISTVIEW_CLIENTS), -1, &lvFindInfo);
std::cout << indexFind << std::endl;
Sa m'affiche -1 donc il ne trouve pas la chaîne "abc" alors qu'elle y est dans la listview. Je pence que le problèmes viens du passage de la structure LVITEM en LPARAM : lvFindInfo.lParam = (LPARAM)(&LvItem);
J'ai bien essayer lvFindInfo.lParam = (LPARAM)(LvItem); mais rien a faire sa ne fonctionne pas.
Donc si vous connaissez une procédure pour chercher une chaîne dans une autre colonne que la 1ère dans une listview, je vous prie de me l'expliquer.
Au revoir.