我把一个基于CView的SDI静态分割为两个窗口,左边基于CTreeView,右边基于CListView。我在树形视图里创建了一个带复选框的树。当我点击复选框的时候选择的节点不会改变!我想要的是我点击复选框,实现节点与复选框的同步!请大家帮帮我!留下点代码!

解决方案 »

  1.   

    响应ON_NOTIFY(NM_CLICK, IDC_TREE1, OnClickTree1)消息;
    void CXXXXDlg::OnClickTree1(NMHDR* pNMHDR, LRESULT* pResult) 
    {
    // TODO: Add your control notification handler code here CPoint pt;
    GetCursorPos(&pt);
    m_tree.ScreenToClient(&pt);
    UINT uFlags = 0;
    HTREEITEM hItem = m_tree.HitTest(pt, &uFlags);
    if(NULL != hItem)
    {
    m_tree.SelectItem(hItem);
    if(uFlags & TVHT_ONITEMSTATEICON)
    {
    AfxMessageBox(_T("Click CheckBox"));
    }
    else if(uFlags & TVHT_ONITEMBUTTON)
    {
    AfxMessageBox(_T("Click +"));
    }
    }

    *pResult = 0;
    }
      

  2.   

    我是用的CTreeView 没有ID啊 怎么办呢?