1、显示窗口ShowWindow
/*ShowWindow函数功能:显示器上显示窗口*/
ShowWindow(hwnd,iCmdShow);
//第一参数为窗口句柄,第二个参数是作为参数传给WinMain的iCmdShow。它确定最初如何在屏幕上显示窗口,是一般大小、最小化还是最大化。如果ShowWindow的第二个参数是SW_SHOWNORMAL,则窗口的显示区域就会被窗口类别中定义的背景画刷所覆盖。
/*重画显示区域*/
UpdateWindow(hwnd);//它由WndProc函数中的一个WM_PAINT消息做到。
/*消息循环:在发生输入事件之后,Windows将事件转换为一个「消息」并将消息放入程序的消息队列中。程序通过执行一块称之为「消息循环」的程序代码从消息队列中取出消息*/
while(GetMessage(&msg,NULL,0,0))
{
TranslateMessage(&msg); //msg结构传给Windows,进行键盘转换
DispatchMessage(&msg); //msg变量是型态为MSG的结构,msg传给Windows,后者传给WndProe函数处理再回传。
}
//四个参数,第一个表示指向名为msg的MSG结构。二、三、四表示程序接收它自己建立的所有窗口的所有消息。
/*型态MSG在WINUSER.H的定义如下*/
typedef struct tagMSG
{
HWND hwnd;//接收消息的窗口句柄
UINT message;//消息标识符,为一个数值。如按鼠标左键,即放入一个消息
WPARAM wParam; //32位消息参数
LPARAM IParam; //32位消息参数
DWORD time; //消息放入消息队列中的时间
POINT pt; //消息放入消息队列时的鼠标坐标。
}
MSG,*PMSG;
//WM_QUIT消息将导致GetMessage传回0。通常,GetMessage就传回一个非零值。
/*POINT数据型态结构,在WINDEF.H定义*/
typedef struct tagPOINT
{
LONG x;
LONG y;
}
POINT,*PPOINT;
单词:dispatch发送