Recupération d'iD

Signaler
Messages postés
80
Date d'inscription
vendredi 4 février 2005
Statut
Membre
Dernière intervention
30 mars 2007
-
Messages postés
80
Date d'inscription
vendredi 4 février 2005
Statut
Membre
Dernière intervention
30 mars 2007
-
Salut !!

je recherche désespérement a savoir comment récupérer l'identifiant d'un élément treeview lorsque je click deux fois dessus...

Je sais qu'avec TVN_SELCHANGED, l'id se met dans pntv->itemNew.lParam

mais avec le signal NM_DBLCLK, ou est ce qu'il est enregistré ????

Merci d'avance !!!

4 réponses

Messages postés
6535
Date d'inscription
lundi 16 décembre 2002
Statut
Modérateur
Dernière intervention
22 août 2010
7
Visiblement tu ne peux pas le récupérer directement. Je pense que tu peux le récupérer en appelant TreeView_GetSelection
Messages postés
80
Date d'inscription
vendredi 4 février 2005
Statut
Membre
Dernière intervention
30 mars 2007

Oki mais j'ai essayé, ca amrche pas des masses.. tu n'aurais pas un exemple d'utilisation par hasard ?? je na parvient pas a récupérer ce maudit id....


Selected = TreeView_GetSelection(hwnd); //voila la fonction que je lance apres avoir fait un double clik...
printf("item = %d\n", Selected.item.lParam); //affichage de l'item selectionné...

Et voila l'erreur que j'obtiens :

.\etherealplayer.cpp(326) : error C2027: use of undefined type '_TREEITEM'


C:\Program Files\Microsoft Platform SDK\Include\commctrl.h(4586) : see declaration of '_TREEITEM'


.\etherealplayer.cpp(326) : error C2227: left of '->item' must point to class/struct/union/generic type


.\etherealplayer.cpp(326) : error C2228: left of '.lParam' must have class/struct/union

Je comprends pas...

Merci pour ton aide !
Messages postés
6535
Date d'inscription
lundi 16 décembre 2002
Statut
Modérateur
Dernière intervention
22 août 2010
7
Selected est un HTREEITEM
Pour avoir son lParam, tu utilise TreeView_GetItem
Messages postés
80
Date d'inscription
vendredi 4 février 2005
Statut
Membre
Dernière intervention
30 mars 2007

Alors voila ce que j'ai fais :

TV_ITEM *tvitem;
LPNM_TREEVIEW pntv = (LPNM_TREEVIEW)lParam;



case
WM_NOTIFY:


if(pntv->hdr.code == NM_DBLCLK)
{
if
(TreeView_GetItem(treeViewFlux, tvitem))
printf("item = %d\n", tvitem->lParam);
}

Mais rien ne se passe... je sais vraiment pas koi faire...

Merci encore !