我使用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)。 展开
分别使用了
SendMessage(hWnd,WM_PAINT,wParam,lParam);和
UpdateWindow(hWnd);
都不成功,
还有我如何响应鼠标不在窗口区域内的消息呢?我设置了响应WM_NCMOUSEMOVE消息,但这个消息就从来没有被发送过。
我已经使用
RECT rectMain;
GetClientRect(hWnd,&rectMain);
InvalidateRect(hWnd,&rectMain,false);
方法解决了重绘新窗口的工作。
但如获获得鼠标离开窗口的消息呢?
WM_NCMOUSEMOVE消息总是不被触发,我的窗口是一个子窗口(不是MDI)。 展开
展开全部
你可以新建一个自己的按钮类,然后在类中加入WM_MouseMove消息响应函数,在子窗口中直接用这个按钮类就可以了.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
微测检测5.10
2023-05-10 广告
2023-05-10 广告
您好!建议咨 深圳市微测检测有限公司,已建立起十余个专业实验室,企业通过微测检测就可以获得一站式的测试与认 证解决方案;(EMC、RF、MFi、BQB、QI、USB、安全、锂电池、快充、汽车电子EMC、汽车手机互 联、语音通话质量),认证遇...
点击进入详情页
本回答由微测检测5.10提供
展开全部
可以在WM_MOUSEMOVE中执行_TrackMouseEvent这个API,这样当鼠标移出窗口后就会收到一个WM_MOUSELEAVE消息了。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你可以新建一个自己的按钮类,然后在类中加入WM_MouseMove消息响应函数,在子窗口中直接用这个按钮类就
参考资料: 我使用vc++ API编程,我想做一个类似按钮的窗口,怎样响应鼠标在窗口区域内或不在的消息?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询