关于OnNcLButtonUp不能响应消息的问题
来源:互联网 发布:韩国高清网络电视直播 编辑:程序博客网 时间:2024/05/16 22:42
我使用了OnNcLButtonDown可以响应消息,之后使用OnNcLButtonUp却不能响应单击消息,但双击能响应。
网上找了些资料,说因为窗口管理器在处理 OnNcLButtonDown 的时候捕捉了鼠标焦点,即使用了 SetCapture 函数,在捕捉了鼠标焦点后,窗口就不会发送 WM_NCLBUTTONUP 消息而会发送 WM_LBUTTONUP 消息。
解决办法:
在你的CXXDialog中的消息处理函数OnSysCommand()(对WM_SYSCOMMAND的响应)添加下面代码:
void CXXXDialog::OnSysCommand(UINT nID, LPARAM lParam)
{
if( (nID & 0xFFF0) == IDM_ABOUTDLG )
{
// 省略...
}
else
{
// 这是本来有的
CDialog::OnSysCommand(nID, lParam);
// 加入下面这2行
if( (nID & 0xFFF0) == SC_MOVE )
PostMessage(WM_NCLBUTTONUP, nID, lParam);
}
}
当DLG收到WM_NCLBUTTONDOWN后, 却省的DefWindowProc会发送WM_SYSCOMMAND, 然后在处理WM_SYSCOMMAND时, 还会有一些消息被发送并处理, 会使WM_NCLBUTTONUP不会被收到, 所以在WM_SYSCOMMAND的处理返回后, 再补发一个WM_NCLBUTTONUP
- 关于OnNcLButtonUp不能响应消息的问题
- 关于OnNcLButtonUp不能响应消息的问题
- 一个解决OnNcLButtonUp不能响应消息问题的更好办法
- 关于onnclbuttonup
- 关于非客户区的onnclbuttonup
- ATL中控件不能响应消息的问题
- 如何扑捉到WM_NCLBUTTONUP(OnNcLButtonUp)消息
- 关于CStatic类不能重载ON_WM_LBUTTONDOWN消息的问题
- 关于removeCallbacks不能移除消息的问题
- 关于MFC消息响应的一点注意事项
- 关于QT的按键消息响应
- MFC关于消息响应的宏代码
- mfc 一个关于子窗口相互覆盖下的消息响应的问题
- 对话框不能响应键盘消息
- MFC对话框程序不能响应WM_CHAR消息的解决办法
- 一个页面响应不能结束的问题
- safari中不能响应click()的问题
- android ViewPager 不能响应onTouchListener的问题
- _kCATransitionFade", referenced from:错误原因
- 数组和对象
- 无法访问。您可能没有权限使用网络资源。……拒绝访问
- How to simulate a Form POST request by using WinInet
- find搜索目录下所有文件内容中的某个单词
- 关于OnNcLButtonUp不能响应消息的问题
- JNDI 是什么
- Understanding Instance and Class Members(Reprint from http://download.oracle.com/javase/tutorial/ja)
- css中的position属性
- bat文件
- OE邮件压缩后丢失的原因及对策
- 列表
- 怎么将RED5项目部署在tomcat下运行,并且red5项目嵌入到J2EE项目中
- iCloud说明