窗口函数

while(GetMessage(&msg, NULL, NULL, NULL))

{

    TranslateMessage(&msg);//透过USER模块的协助,送到该窗口的窗口函数中,并决定处置方式。是被系统调用,我们没有在应用程序中调用此函数,它是一个回调函数。在WinProc中一定要有一个DefWindowProc函数。来用于交由内部预设的消息处理函数来进行处理。

    DidpatchMessage(&msg);

}

对话框依其父窗口的关系分为模态对话框和非模态对话框。与窗口函数非常类似。但通常只处理WM_INITDIALOG和WM_COMMAND两个消息。

程序流程:CreateWindow 送出WM_CREATE给窗口函数使该函数做初始化动作。-> 不断GetMessage,碰到WM_QUIT就结束循环,进而结束程序。->在上一个模块的循环中的DispatchMessage通过USER模块的协助与监督,把消息从至窗口函数处理。->使用者按关闭按钮系统送出WM_close,由DefWindowProc来处理,并送出WM_DESTROY。窗口函数调用PostQuitMessage。该函数又送出WM_Quit从而结束。

原文地址:https://www.cnblogs.com/cxiaoln/p/3100170.html