首页 > 代码库 > Windoows窗口程序七

Windoows窗口程序七

WM_QUIT--用于结束消息循环处理
    wParam - PostQuitMessage函数传递的参数
    lParam - 不使用
    当GetMessage收到这个消息后,会返回false,结束while处理,退出消息循环。
    WM_QUIT不会进入消息处理函数,因为这是由PostQuitMessage函数向窗口发送的消息,GetMessage直接返回了。

WM_PAINT--绘图消息
键盘消息
鼠标消息
定时器消息
GetMessage--从系统获取消息,将消息从系统中移除,阻塞函数。当系统无消息时,GetMessage会等候下一条消息。
PeekMessage--以查看的方式从系统获取消息,可以不将消息从系统中移除,非阻塞函数。当系统无消息时,返回false,继续执行后续代码。
BOOL WINAPI PeekMessage(
  _Out_    LPMSG lpMsg,
  _In_opt_ HWND  hWnd,
  _In_     UINT  wMsgFilterMin,
  _In_     UINT  wMsgFilterMax,
  _In_     UINT  wRemoveMsg//移除标识
);
SendMessage--发送消息,会等候消息处理的结果。
PostMessage--投递消息,消息发出后立刻返回,不等候消息执行结果。
LRESULT SendMessage(
  _In_ HWND   hWnd,//消息发送的目的窗口
  _In_ UINT   Msg,//消息ID
  _In_ WPARAM wParam,//消息参数
  _In_ LPARAM lParam//消息参数
);
BOOL PostMessage(
  _In_opt_ HWND   hWnd,
  _In_     UINT   Msg,
  _In_     WPARAM wParam,
  _In_     LPARAM lParam
);

 

Windoows窗口程序七