已知MFC树控件的节点,怎样发送一个鼠标左键单击的消息?

HTREEITEMhChild=m_treeDeviceList.GetChildItem(hItem);while(hChild){HTREEITEMhGrandson... HTREEITEM hChild = m_treeDeviceList.GetChildItem(hItem);
while (hChild)
{
HTREEITEM hGrandson = m_treeDeviceList.GetChildItem(hChild);
while (hGrandson)
{
hGrandson = m_treeDeviceList.GetNextSiblingItem(hGrandson);
}
hChild = m_treeDeviceList.GetNextSiblingItem(hChild);
}
这是遍历的源码,大神帮我看下怎么点击那个hChild。
展开
 我来答
joychen_
2014-07-30 · TA获得超过1747个赞
知道大有可为答主
回答量:1617
采纳率:100%
帮助的人:1807万
展开全部

是想让某个节点被选中? 还是就是为了模拟鼠标?

选中的话,可以用

CTreeCtrl::SelectItem
BOOL SelectItem(
   HTREEITEM hItem 
);

模拟的话,就是 mouse_event

更多追问追答
追问
我是在初始化遍历时获取的节点,要起到的效果是初始化时单击一次找到的节点。
追答
        hResult = m_pWin->PostMessage(WM_LBUTTONDOWN, MK_LBUTTON, m_lp);
        hResult = m_pWin->PostMessage( WM_LBUTTONUP, MK_LBUTTON, m_lp);

也可以直接发送消息,代码仅供参考,关键是要算对坐标值。

也可以用 SPY++抓一下消息,看你发送的和真正的点击有什么区别。

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式