我使用vc++ API编程,我想做一个类似按钮的窗口,怎样响应鼠标在窗口区域内或不在的消息?

我响应了WM_MOUSEMOVE消息,更改设置后我想让窗口重新绘图。分别使用了SendMessage(hWnd,WM_PAINT,wParam,lParam);和Upda... 我响应了WM_MOUSEMOVE消息,更改设置后我想让窗口重新绘图。
分别使用了
SendMessage(hWnd,WM_PAINT,wParam,lParam);和
UpdateWindow(hWnd);
都不成功,
还有我如何响应鼠标不在窗口区域内的消息呢?我设置了响应WM_NCMOUSEMOVE消息,但这个消息就从来没有被发送过。
我已经使用
RECT rectMain;
GetClientRect(hWnd,&rectMain);
InvalidateRect(hWnd,&rectMain,false);
方法解决了重绘新窗口的工作。
但如获获得鼠标离开窗口的消息呢?
WM_NCMOUSEMOVE消息总是不被触发,我的窗口是一个子窗口(不是MDI)。
展开
 我来答
阿超yuch
2008-11-23 · TA获得超过104个赞
知道小有建树答主
回答量:266
采纳率:0%
帮助的人:0
展开全部
你可以新建一个自己的按钮类,然后在类中加入WM_MouseMove消息响应函数,在子窗口中直接用这个按钮类就可以了.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
微测检测5.10
2023-05-10 广告
您好!建议咨 深圳市微测检测有限公司,已建立起十余个专业实验室,企业通过微测检测就可以获得一站式的测试与认 证解决方案;(EMC、RF、MFi、BQB、QI、USB、安全、锂电池、快充、汽车电子EMC、汽车手机互 联、语音通话质量),认证遇... 点击进入详情页
本回答由微测检测5.10提供
lqbest127
2008-11-28 · TA获得超过122个赞
知道答主
回答量:182
采纳率:0%
帮助的人:148万
展开全部
可以在WM_MOUSEMOVE中执行_TrackMouseEvent这个API,这样当鼠标移出窗口后就会收到一个WM_MOUSELEAVE消息了。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
z424531215
2008-11-23
知道答主
回答量:83
采纳率:0%
帮助的人:0
展开全部
你可以新建一个自己的按钮类,然后在类中加入WM_MouseMove消息响应函数,在子窗口中直接用这个按钮类就

参考资料: 我使用vc++ API编程,我想做一个类似按钮的窗口,怎样响应鼠标在窗口区域内或不在的消息?

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式