OVH Cloud OVH Cloud

CTreeCtrl - pNMTreeView->itemNew.lParam ??????

2 réponses
Avatar
Dominique de LAPASSE
Bonjour,
Je travaille en VC++ 6.00 avec les MFC.
Je supposais que

NM_TREEVIEW* pNMTreeView = (NM_TREEVIEW*)pNMHDR;
long lItemData;
lItemData = pNMTreeView->itemNew.lParam;


donne la valeur mise dans le SetItemData d'un CTreeCtrl item.

Ca semble OK pour OnSelchangedTree(NMHDR* pNMHDR, LRESULT* pResult)
mais faux pour OnDblclkTree1(NMHDR* pNMHDR, LRESULT* pResult) .

Quelqu'un sait pourquoi et comment attraper l'item double-cliqué d'un
CTreeCtrl ?

Merci

Dominique

2 réponses

Avatar
Christian ASTOR
Dominique de LAPASSE wrote:

Je supposais que

NM_TREEVIEW* pNMTreeView = (NM_TREEVIEW*)pNMHDR;
long lItemData;
lItemData = pNMTreeView->itemNew.lParam;


donne la valeur mise dans le SetItemData d'un CTreeCtrl item.

Ca semble OK pour OnSelchangedTree(NMHDR* pNMHDR, LRESULT* pResult)
mais faux pour OnDblclkTree1(NMHDR* pNMHDR, LRESULT* pResult) .

Quelqu'un sait pourquoi et comment attraper l'item double-cliqué d'un
CTreeCtrl ?



TVM_HITTEST
Avatar
Dominique de LAPASSE
"Christian ASTOR" a écrit dans le message de
news: 4159098e$0$15747$
Dominique de LAPASSE wrote:

> Je supposais que
>
> NM_TREEVIEW* pNMTreeView = (NM_TREEVIEW*)pNMHDR;
> long lItemData;
> lItemData = pNMTreeView->itemNew.lParam;
>
>
> donne la valeur mise dans le SetItemData d'un CTreeCtrl item.
>
> Ca semble OK pour OnSelchangedTree(NMHDR* pNMHDR, LRESULT* pResult)
> mais faux pour OnDblclkTree1(NMHDR* pNMHDR, LRESULT* pResult) .
>
> Quelqu'un sait pourquoi et comment attraper l'item double-cliqué d'un
> CTreeCtrl ?

TVM_HITTEST


oui....
ou m_Tree.GetSelectedItem() ce qui est peut etre plus rapide, mais bon
pourquoi le wizard nous donne ce paramètres NMHDR* pNMHDR dans
OnDblclkTree(NMHDR* pNMHDR, LRESULT* pResult), apparemment ca ne peux pas
servir; juste a perdre un peu de temps avant de s'apercevoir que ni
hOldItem, ni hNewItem ne pointe sur l item double-cliqué.....

Mais merci Christian, et j'aime bien l'extrême développement de tes
réponses, et le sens littéraire dont tu ne manques pas de faire preuve à
cette occasion. ; )

Dominique