WM 命令
傳送到視窗過程時:
- 使用者從選單中選擇一個專案
- 控制元件向其父視窗傳送通知
- 加速鍵擊被翻譯
訊息來源 | HIWORD(WP) |
LOWORD(WP) |
唱片 |
---|---|---|---|
選單 | 0 | 選單 ID(IDM_ *) | 0 |
加速器 | 1 | 加速 ID(IDM_ *) | 0 |
控制 | 通知程式碼 | 控制 ID | 控制視窗的 HWND |
例如,在記事本中,當使用者單擊“檔案 - >開啟”時,將顯示一個對話方塊以允許使用者開啟檔案。選單項在視窗過程的 WM_CREATE 訊息中處理,如下所示:
LRESULT CALLBACK winproc(HWND hwnd, UINT wm, WPARAM wp, LPARAM lp)
{
switch (wm) {
case WM_COMMAND:
switch (LOWORD(wp) {
case ID_FILE_OPEN:
/* show file open dialog */
break;
case ID_FILE_NEW:
/* create new instance */
break;
}
return 0;
}
return DefWindowProc(hwnd, wm, wp, lp);
}