首页 新闻 会员 周边

Win32的消息循环的疑问

0
悬赏园豆:5 [待解决问题]
1 MSG uMsg;
2 while(GetMessage(&uMsg, NULL, 0, 0))
3 {
4   ::TranslateMessage(&uMsg);
5 
6   ::DispatchMessage(&uMsg);  
7 }

  这段代码是Win32的消息循环代码,我对这个GetMessage函数的NULL参数表示疑问啊,很多Win32程序例子里都是写成NULL, 那什么情况下才换成其他的参数呢?

chifandeyu的主页 chifandeyu | 初学一级 | 园豆:197
提问于:2015-10-06 02:27
< >
分享
所有回答(2)
0

http://baike.baidu.com/link?url=gOfDfpuGhFJ9J_qxDc7LmuGS_Q-XY2prwZe7pp7N8_sbV6WMlQASxNaiOeXwyTRD5fWYx6yEK-2Ns1IYKcPVy_

弄清楚这个参数的用意你就明白了

36Hours | 园豆:202 (菜鸟二级) | 2015-10-06 09:12
1

这个NULL表示获取任进程中何窗口的消息,也可以写为某个窗口的句柄。欢迎查看我的博客:

http://www.cnblogs.com/icooper/p/4574944.html

 

记得给分,谢谢!

黑桃七 | 园豆:268 (菜鸟二级) | 2015-10-06 09:50

可是我把它写成hWnd, 点关闭后,这个进程还在,而且cpu占用率慢慢升高啊 这是怎么回事呢?

支持(0) 反对(0) chifandeyu | 园豆:197 (初学一级) | 2015-10-06 23:25

@chifandeyu: 你打一个断点在while内,看是否收到WM_QUIT消息。

支持(1) 反对(0) 黑桃七 | 园豆:268 (菜鸟二级) | 2015-10-07 11:48
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册