我在对话框上加树控件,在对话框类中加树控件的右键函数:
如下:
CMenu menuPopup;
// 得到鼠标位置 
DWORD dw = GetMessagePos();
CPoint pt(LOWORD(dw),HIWORD(dw));//鼠标的屏幕坐标 CPoint ptClient;
CRect rcPart;
m_treeWorkSpace.GetWindowRect(rcPart);
ptClient.x = pt.x - rcPart.left;
ptClient.y = pt.y - rcPart.top;

DWORD dData=0; 
TVHITTESTINFO tHitTestInfo;
tHitTestInfo.pt = ptClient;
HTREEITEM hitem = m_treeWorkSpace.HitTest( &tHitTestInfo ); 
if(hitem==NULL)
{
return;
}
else
{
dData = m_treeWorkSpace.GetItemData(hitem );
switch(dData)
{
case 0:
break;
case 1:
menuPopup.LoadMenu(IDR_INSERTLAN);
menuPopup.GetSubMenu(0)->TrackPopupMenu(TPM_LEFTALIGN,pt.x,pt.y,this);
break;
case 2:
menuPopup.LoadMenu(IDR_INSERTDEVICE);
menuPopup.GetSubMenu(0)->TrackPopupMenu(TPM_LEFTALIGN,pt.x,pt.y,this);
break;;                 case 3:
AfxMessageBox("第3层!");
break;
case 4:
AfxMessageBox("第4层!");
break;
}
}根据每个item的数据判断!为什么根节点可以,但其他节点不行。
注:我在右击非根节点时,光标加亮到根节点。请问如何解决!