VC如何使用GETMESSAGE
展开全部
在程序里一般都像以下形式出现的:
MSG msg;
while(::GetMessage(&msg,NULL,0,0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
获取消息队列中的消息,并把消息传递给窗口函数。
我认为GetMessage 是一个非常特殊的函数。当一个程序没有消息时,比如处于隐藏或最小化。这时程序的代码会执行到 GetMessage 内部的某个地方就停下来。整个程序都阻塞了,直到有消息又会继续执行代码( while(::GetMessage(&msg,NULL,0,0)) ).
基于这个特性,在阻塞对话框和菜单中,都会使用以上代码来阻塞代码往下运行。
MSG msg;
while(::GetMessage(&msg,NULL,0,0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
获取消息队列中的消息,并把消息传递给窗口函数。
我认为GetMessage 是一个非常特殊的函数。当一个程序没有消息时,比如处于隐藏或最小化。这时程序的代码会执行到 GetMessage 内部的某个地方就停下来。整个程序都阻塞了,直到有消息又会继续执行代码( while(::GetMessage(&msg,NULL,0,0)) ).
基于这个特性,在阻塞对话框和菜单中,都会使用以上代码来阻塞代码往下运行。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询