Windows的消息处理机制是用如下代码进行消息处理的:
MSG message;
While(::GetMessage(&message, NULL, 0, 0))
{
::TranslateMessage(&message);
::DispatchMessage(&message);
}
当消息到达时,由TranslateMessage进行必要的转换,例如:将WM_KEYDOWN消息转换为包含有ASCII字符的WM_CHAR消息,然后由DispatchMessage进行发送,当处理完成后,DispatchMessage返回。