我需要从线程的消息队列中删除所有与键盘相关的消息。经过一些研究,我设法编写了以下代码:
for( MSG zMsg; PeekMessage( & zMsg, NULL, WM_KEYFIRST, WM_KEYLAST, PM_REMOVE ); );
但是好像不行。
我不知道这是否是一个好的做法,但我没有机会也没有时间重写我正在处理的代码以使其更清晰。
请问我怎样才能让这段代码工作?
感谢您的帮助!
编辑:我正在使用 WindowsCE
最佳答案
我认为您正在过滤除键盘消息之外的所有内容。
wMsgFilterMin
要检查的消息范围内的第一条消息的值。
wMsgFilterMax
要检查的消息范围内的最后一条消息的值。
http://msdn.microsoft.com/en-us/library/windows/desktop/ms644943(v=vs.85).aspx
关于c++ - Windows - 从消息队列中删除与键盘相关的消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18653104/