如何点击树控件弹出一个对话框,我是在单文档里实现的树控件

解决方案 »

  1.   

    NM_CLICK 最好加上 HitTest 判断一下
      

  2.   

    //先增加消息响应函数 ON_NOTIFY(NM_CLICK, IDC_TREE_NODE, OnClickTreeNode)//OnClickTreeNode()函数中
    POINT pt;
    GetCursorPos(&pt);
    m_wndTree.ScreenToClient(&pt); 
        HTREEITEM h;
    UINT flags;
    h=m_wndTree.HitTest(pt,&flags); if (h == NULL)
    return; int   nLevel=0;
    HTREEITEM TempParent = m_wndTree.GetParentItem(h);
    while   (TempParent!=NULL)
    { // 得到几级节点
    ++nLevel;
    TempParent=m_wndTree.GetParentItem(TempParent); 
    } switch (nLevel)
    {
    case 0://根结点
                 CDlg1 dlg;
                 dlg.DoModal();
            break;        ...        default: break;}