Salut a tous,
J'ai un petit soucis de perf pour tester l'existance d'un SubItem dans une listview.
En fait j'ai une fonction AddLvItem a qui j'envoie le text de l'item et le text du subItem a ajouter,
celle-ci verifie que le subItem n'existe pas deja et l'ajoute dans la listview.
Voici mon code:
void
AddLvItem(char *chItemTxt, char *chSubItem)
{LVITEM lvItem;
int i=0;
LRESULT lviCount=0;
char RetChar[5];
RtlFillMemory(&lvItem, sizeof(LVITEMA), 0);
RtlFillMemory(RetChar, 5, 0);
lviCount=SendMessageA(hLv, LVM_GETITEMCOUNT, 0, 0);
lvItem.mask = LVIF_TEXT;
if (lviCount==-1) goto ADD;
lvItem.iSubItem = 1;
lvItem.cchTextMax = 5;
lvItem.pszText = RetChar;
for (i=0; i<(int)lviCount; i++)
{
lvItem.iItem = i;
SendMessageA(hLv, LVM_GETITEMTEXT, i, (LPARAM) &lvItem);
if (RtlCompareMemory(chSubItem, RetChar, 4)==4) return;
}
ADD:
lvItem.pszText = chItemTxt;
lvItem.iItem = lviCount;
lvItem.iSubItem = 0;
SendMessageA(hLv, LVM_INSERTITEMA, lviCount, (LPARAM) &lvItem);
lvItem.iSubItem = 1;
lvItem.cchTextMax=5;
lvItem.pszText = chSubItem;
SendMessageA(hLv, LVM_SETITEMTEXT, lviCount, (LPARAM) &lvItem);
}
J'imagine que je dois mal m'y prendre mais je vois pas comment faire autrement ?
Ou peut etre n'est ce pas la methode mais le code en lui meme ?
Merci d'avance pour votre aide
++
Quand on pose une question on est con 5 minutes,
Quand on ne la pose pas on le reste toute sa vie...