MFC捕捉鼠标移动到button上的消息

2025-02-26 18:02:02
推荐回答(2个)
回答1:

按钮也是窗口,因此当鼠标移动到按钮上面后WM_MOVE消息就只发送给按钮而不会发送给CTOOLTESTView窗口因此在CTOOLTESTView::OnMouseMove里面是捕捉不到按钮上面的鼠标移动消息的,Picture Control控件在Notify属性为FALSE的情况下鼠标消息是可以穿透的,而按钮控件没有这个功能。如果一定要使用按钮控件,可以在CTOOLTESTView
使用定时器的办法,比如定时时间间隔为10毫秒,每10毫秒检测一次鼠标的位置(使用API GetCursorPos函数,注意,函数名在这里可能拼错,自己在网上搜一下),这个函数获取的位置坐标是屏幕坐标,判断一下是否在按钮里面就可以了。

回答2:

那个按钮也是窗口,因此当鼠标移动到按钮上面后WM_MOVE消息就只发送给按钮而不会发送给CTOOLTESTView窗口因此在CTOOLTESTView