WM_CONTEXTMENU訊息

通知使用者想要顯示操作功能表的視窗。 使用者可能已按一下滑鼠右鍵 (在視窗中按一下滑鼠右鍵) 、按下 Shift+F10 或按下應用程式按鍵 (操作功能表鍵,) 某些鍵盤上可以使用。

#define WM_CONTEXTMENU                  0x007B

參數

wParam

使用者以滑鼠右鍵按一下滑鼠的視窗控制碼。 這可以是接收訊息之視窗的子視窗。 如需處理此訊息的詳細資訊,請參閱一節。

lParam

低序字會在按一下滑鼠時,以螢幕座標指定游標的水準位置。

高序字會在按一下滑鼠時,指定游標的垂直位置,以螢幕座標表示。

傳回值

沒有傳回值。

備註

視窗可以使用 TrackPopupMenuTrackPopupMenuEx 函式來顯示快顯功能表來處理此訊息。 若要取得水準和垂直位置,請使用下列程式碼。

xPos = GET_X_LPARAM(lParam); 
yPos = GET_Y_LPARAM(lParam); 

如果視窗未顯示快捷方式功能表,它應該將此訊息傳遞至 DefWindowProc 函式。 如果視窗是子視窗, DefWindowProc 會將訊息傳送至父視窗。 否則,如果指定的位置位於視窗的標題中,DefWindowProc會顯示預設快捷方式功能表。

DefWindowProc會在處理WM_RBUTTONUPWM_NCRBUTTONUP訊息或使用者輸入 SHIFT+F10 時產生WM_CONTEXTMENU訊息。 當使用者按下並放開VK_APPS鍵時,也會產生WM_CONTEXTMENU訊息。

例如,如果使用者輸入 SHIFT+F10,則會從鍵盤產生操作功能表,則 x 和 y 座標為 -1,而且應用程式應該在目前選取範圍的位置顯示操作功能表,而不是在 (xPos、yPos) 。

規格需求

需求
最低支援的用戶端
Windows 2000 專業版 [僅限傳統型應用程式]
最低支援的伺服器
Windows 2000 Server [僅限傳統型應用程式]
標頭
Winuser.h (包含 Windows.h)

另請參閱

參考

DefWindowProc

GET_X_LPARAM

GET_Y_LPARAM

TrackPopupMenu

TrackPopupMenuEx

WM_NCRBUTTONUP

WM_RBUTTONUP

概念

功能表