CTreectrl右键问题

kevin_darkelf 2006-10-17 01:11:54
想在树控件的结点上 ,点击鼠标右键, 得到结点的名字, 但运行时总无法获得结点
代码如下,请各位帮查查,谢了~`

// TREE右键消息处理函数
void CLeftView::OnNMRclickTreeDept(NMHDR *pNMHDR, LRESULT *pResult)
{
// TODO: 在此添加控件通知处理程序代码
*pResult = 0;
CPoint myPoint;

// Select the item that is at the point myPoint.
UINT uFlags;
GetCursorPos(&myPoint);
HTREEITEM hItem = m_treeDept.HitTest(myPoint, &uFlags);

if ((hItem != NULL) && (TVHT_ONITEM & uFlags))
{
m_treeDept.Select(hItem, TVGN_CARET);
LPNMTREEVIEW pNMTreeView = reinterpret_cast<LPNMTREEVIEW>(pNMHDR);
TVITEM item = pNMTreeView->itemNew;
if(item.hItem == m_hRoot)
return ;
CString strDeptName = m_treeDept.GetItemText(item.hItem);
AfxMessageBox(strDeptName);

}
}
...全文
146 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
kevin_darkelf 2006-10-17
  • 打赏
  • 举报
回复
还是不行哦~`` -___-!, IF里的没有运行过~
lixiaosan 2006-10-17
  • 打赏
  • 举报
回复
UINT uFlag;
CPoint point;
GetCursorPos(&point);
m_tree.ScreenToClient(&point);
HTREEITEM hItem = m_tree->HitTest(point, &uFlag);
if ( (NULL!=hItem) && (flag&TVHT_ONITEMSTATEICON))
{
m_tree.Select(hItem, TVGN_CARET);
}

15,976

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧