CTreeCtrl::HitTest】的更多相关文章

CTreeCtrl::HitTest   调用此函数确定指定的位置点相对树视图控件的工作区的. HTREEITEM HitTest(  CPoint pt,  UINT* pFlags = NULL  ) const;  HTREEITEM HitTest(  TVHITTESTINFO* pHitTestInfo  ) const; 参数    pt 测试的点工作区坐标. pFlags 为获取有关命中测试的结果的信息的整数的指针测试. 它可以是一个或多个值列表的"备注"部分的 fla…
//这是当CTREECTRL控件点击时NM_CLICK的处理函数 void CDriverSelCtrl::OnNMClick(NMHDR *pNMHDR, LRESULT *pResult) { CPoint curPoint; UINT nFlags; HTREEITEM hItem; GetCursorPos(&curPoint); //当前点坐标 ScreenToClient(&curPoint); //屏幕坐标转换为TREE内坐标 hItem = HitTest(curPoint…
最近工作中需要让CTreeCtrl控件的每一项都有提示信息,于是谷歌百度,爬山涉水,结果是………….在CodeProject里找到一篇文章是把CTreeCtrl派生出新类,重载一些函数自定义内容.使用的时候添加这个类,创建树控件.觉得十分麻烦,看懂都够费劲了.琢磨了一段时间,找出一个简单的实现方法,还没发现有什么漏洞,如果你们有什么问题,可以提出来,十分感谢.下面进入正题: 1.拖一个树控件到对话框中,绑定一个变量,风格随你喜好. 2.在头文件里添加一个CToolTipCtrl变量 3.在OnI…
原帖及讨论:http://bbs.bccn.net/thread-211413-1-1.html 效果描述:鼠标点击并拖动某一结点可以把它以动到其他结点下.原理:把一个结点机器下面的所有结点在需要释放的位置拷贝,释放后再把原来位置的结点删掉,结点拖动主要用到三个系统消息.1.    OnBeginDrag:选中要拖动的结点,建立拖动阴影(即拖动时和鼠标一起移动的那个阴影图标)2.    OnMouseMove:将拖动阴影与鼠标绑定,使其同鼠标一起移动.3.    LButtonUp:鼠标释放,结…
本文实现了下面的功能: 当选中父节点时, 其所有子节点全部选中. 当取消选中父节点时, 其所以子节点全部取消选中. 点击子节点时, 根据子节点与其兄弟节点的选中状态, 自动设置父节点的选中状态. 通过继承CTreeCtrl实现, 代码如下(注释已经写得很清楚了): CustomTreeCtrl.h #pragma once // CCustomTreeCtrl class CCustomTreeCtrl : public CTreeCtrl { DECLARE_DYNAMIC(CCustomTr…
设置CTreeCtrl的Always Show Selection:TrueCListCtrl的Always Show Selection:False在NM_CUSTOMDRAW事件中添加如下代码: ;     LPNMTVCUSTOMDRAW pDraw=(LPNMTVCUSTOMDRAW)pNMHDR;     DWORD dwDrawStage=pDraw->nmcd.dwDrawStage;     UINT uItemState =pDraw->nmcd.uItemState;   …
原帖链接: http://bbs.csdn.net/topics/310185501 楼主: CTreeCtrl鼠标双击响应函数中怎么知道双击的是哪个子项? 6楼: CPoint pt;GetCursorPos(&pt);m_Tree.ScreenToClient(&pt);UINT uFlags;HTREEITEM hItem = m_Tree.HitTest(pt, &uFlags);…
实现很简单,直接上代码: void CCheckBoxTreeDlg::OnNMClickTree1(NMHDR *pNMHDR, LRESULT *pResult) { // TODO: 在此添加控件通知处理程序代码 CPoint point; UINT uFlag; HTREEITEM hTree; BOOL bCheck; GetCursorPos(&point); m_treeTest.ScreenToClient(&point); hTree = m_treeTest.HitTe…
网上搜了一下,有两种方法: 1.使用GetSelectedItem() HTREEITEM hItem = m_treeCtrl.GetSelectedItem(); CString strText = m_treeCtrl.GetItemText(hItem); MessageBox(strText); 2.使用HitTest() CPoint pt; GetCursorPos(&pt); m_treeCtrl.ScreenToClient(&pt); UINT uFlags; HTRE…
void CDepartmenManager::SetUncheck(HTREEITEM hTree) { if (!hTree){ return; } m_DePartmentView.SetCheck(hTree, 0); HTREEITEM hChild = m_DePartmentView.GetChildItem(hTree); if (hChild){ SetUncheck(hChild); } else{ return; } HTREEITEM hBrothor = m_DePar…