LRESULT CALLBACK WndProc(
HWND hWnd, //要处理的窗口句柄
UINT message,//消息的ID,代表了不同的消息
WPARAM wParam,//按下按键的虚拟键码
LPARAM lParam);//存储按键的相关状态(比如当鼠标消息发出时,wParam为鼠标按键的信息(如虚拟键码VK_SPACE,VK_CANCEL),lParam则存储鼠标的坐标,高字节代表y坐标,低字节代表x坐标,g_y = HIWORD(lParam),g_x = LOWORD(lParam))
case WM_COMMAND://来自菜单、快捷键或工具栏按钮的消息
{
case WM_COMMAND:
wmId = LOWORD(wParam); int wmId = LOWORD(wParam);//对wParam加载,如鼠标的信息按键(如虚拟键码,如VK_SPACE VK_CANCEL之类的东西)
wmEvent = HIWORD(wParam);
// Parse the menu selections:
switch (wmId)
{
case IDM_ABOUT:
DialogBox(hInst, MAKEINTRESOURCE(IDD_ABOUTBOX), hWnd, About);
break;
case IDM_EXIT:
DestroyWindow(hWnd);
break;
default:
return DefWindowProc(hWnd, message, wParam, lParam);
}
break;
case WM_PAINT:
hdc = BeginPaint(hWnd, &ps);
// TODO: Add any drawing code here…
EndPaint(hWnd, &ps);
break;
case WM_DESTROY:
PostQuitMessage(0);
break;
default:
return DefWindowProc(hWnd, message, wParam, lParam);
}
return 0;