vc中win-qiut 消息在什么情况下出现

 我来答
百度网友38c8e98
2011-09-15 · TA获得超过2657个赞
知道小有建树答主
回答量:1131
采纳率:0%
帮助的人:571万
展开全部
消息分为两种:队列化消息、非队列化消息
队列消息指消息队列里的消息,如WM_QUIT,用PostMessage发送的消息是队列消息
非队列消息指直接发送给窗口消息处理程序的消息,未经过消息队列,用SendMessage是非对列化消息

下面是通常结束程序的流程:
单击了 Close按钮,或者假设用键盘或鼠标从系统菜单中选择了 Close,
系统会给程序发送消息WM_SYSCOMMAND,WinMain通过DispatchMessage函数将其传送给WndProc,WndProc又将其交给DefWindowProc处理,DefWindowProc给窗口消息处理程序发送一条WM_CLOSE消息来响应之(非队列化消息),WndProc再次将它交给DefWindowProc,调用DestroyWindow函数
DestroyWindow函数的调用给窗口消息处理程序发送一条WM_DESTROY消息(非队列化消息)

WndProc再调用PostQuitMessage,将一条WM_QUIT消息放入消息队列中,DispatchMessage返回,GetMessage获得WM_QUIT,值为0,消息循环结束,WinMain中止。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式