实现了鼠标按下拖拽事件就无法收到LButtonUp的一个解决方法

背景:

完成鼠标按下,可拖拽对话框,只要在CPlayerUIDlg::OnLButtonDown函数中写代码

PostMessage(WM_NCLBUTTONDOWN, HTCAPTION, MAKELPARAM(point.x, point.y));

即可完成。但执行了这条命令后,当左键弹起时收不到WM_LBUTTONUP消息。


分析及方法:

发现左键弹起时,总会对应WM_MOUSEMOVE事件,所以可以在WM_MOUSEMOVE事件中根据按下时鼠标相对屏幕位置与WM_MOUSEMOVE事件处理函数中鼠标相对屏幕位置来模拟WM_LBUTTONUP消息。




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值