MFC树形控件响应

窗口分割后,左侧为CTreeView,右侧为CEditView,现在想单击树形控件的子节点,在右侧显示响应的图片,请各位高手帮忙解决一下,给点思路,深表感谢... 窗口分割后,左侧为CTreeView,右侧为CEditView,现在想单击树形控件的子节点,在右侧显示响应的图片,请各位高手帮忙解决一下,给点思路,深表感谢 展开
 我来答
mjxaa11
2010-12-20 · TA获得超过4291个赞
知道小有建树答主
回答量:2016
采纳率:25%
帮助的人:1222万
展开全部
不知道你的自定义控件是从哪个类派生的,也不知道你是否重载了虚函数WindowProc()一般来说控件自身是没有能力自己处理鼠标消息的,在重载虚函数WindowProc()函数时可以看到其直接调用的是该自定义控件的基类的WindowProc()函数,从而没有搜索当前类的消息映射表,所以我们需要改变消息路由,比如我从Static类派生了一个树形控件,这个控件我需要响应鼠标单击等事件事件这时我需要重载WindowsProc()函数 并添加
if( message == WM_NCHITTEST|| message == WM_NCLBUTTONDBLCLK
||message==WM_NCLBUTTONDOWN||message==WM_NCRBUTTONUP)
return ::DefWindowProc( m_hWnd, message, wParam, lParam );
return CStatic::WindowProc(message, wParam, lParam);
}
也就是截获WN_NCHITTEST(确定光标所在窗口)消息,鼠标单击消息等;使其搜索该类的消息映射表,从而实现鼠标消息的响应。
新手上路,如有不正确之处请多多包涵。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式