我只有一个线程(Windows应用程序),它接收窗口和用户定义的消息。现在,当用户点击鼠标并按住应用程序锁定时 我该如何解决这个问题?我有一个线程的限制。
答案 0 :(得分:2)
当用户点击鼠标并按住应用程序锁定时。
这不应该发生在标准的消息循环布局中。
如果您想要进行一些长时间的操作(例如等待鼠标注释消息),则无法阻止收到的消息。
所以我认为你的问题是WM_LBUTTONDOWN
中的逻辑。只需设置一个标志,不要等待WM_LBUTTONUP
消息。
答案 1 :(得分:1)
您可以将PeekMessage()与过滤器一起使用。 GetMessage()也允许过滤。
请参阅MSDN文档:http://msdn.microsoft.com/en-us/library/ms644943%28VS.85%29.aspx
答案 2 :(得分:0)
尝试查看是否从wndproc函数返回正确的值。 如果您没有返回正确的值,则应用程序可能会被锁定。 我认为,在你的情况下WM_LBUTTONDOWN事件可能没有返回正确的值.....