我用pNMTreeView->itemNew.cChildren来找该节点的子节点数目好像不对,每次得到的都是5

解决方案 »

  1.   

    // The pointer to my tree control.
    extern CTreeCtrl* pmyTreeCtrl;
    // The item whose children will be deleted.
    extern HTREEITEM hmyItem;// Delete all of the children of hmyItem.
    if (pmyTreeCtrl->ItemHasChildren(hmyItem))
    {
       HTREEITEM hNextItem;
       HTREEITEM hChildItem = pmyTreeCtrl->GetChildItem(hmyItem);   while (hChildItem != NULL)
       {
          hNextItem = pmyTreeCtrl->GetNextItem(hChildItem, TVGN_NEXT);
          pmyTreeCtrl->DeleteItem(hChildItem);
          hChildItem = hNextItem;
       }
    }
      

  2.   

    int nCount(0);
    hItem = GetChildItem(hItem));while (hItem = GetNextSiblingItem(hItem))
    {
      nCount++;
    }
    return nCount;