您的位置:首页 > 其它

Windows事件与消息处理

2017-12-04 09:44 218 查看


Windows消息处理机制:Windows通过GetMessage()函数从消息队列中取得消息,然后由DispatchMessage()函数将消息派送到指定窗口,再由窗口函数WndProc()对消息处理。

当单击“耗时计算”按钮时,一个WM_COMMAND连同相关的参数被发送到WndProc()函数,进而判断该消息由“耗时计算”按钮触发,然后转入对应的消息响应函数进行计算。但在计算结束之前,WndProc()函数不会返回,进而DispatchMessage()函数也不会返回,这样消息循环就不能通过GetMessage()函数从消息队列中获取下一条消息,也就使对话框陷入“瘫痪”状态。

[b]因此,如果能够有两个控制流程,一个负责耗时计算,另一个负责响应用户及系统消息,那么就可以避免发生上述问题。多线程编程正是基于这种思想而出现的。[/b]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: