다음을 통해 공유


WM_CONTEXTMENU 메시지

사용자가 상황에 맞는 메뉴를 표시할 것을 창에 알립니다. 사용자가 창에서 마우스 오른쪽 단추(마우스 오른쪽 클릭)를 클릭하거나 Shift+F10을 누르거나 일부 키보드에서 사용할 수 있는 애플리케이션 키(상황에 맞는 메뉴 키)를 눌렀을 수 있습니다.

#define WM_CONTEXTMENU                  0x007B

매개 변수

wParam

사용자가 마우스를 마우스 오른쪽 단추로 클릭한 창에 대한 핸들입니다. 메시지를 수신하는 창의 자식 창일 수 있습니다. 이 메시지 처리에 대한 자세한 내용은 설명 섹션을 참조하세요.

lParam

낮은 순서의 단어는 마우스 클릭 시 커서의 가로 위치를 화면 좌표로 지정합니다.

상위 단어는 마우스 클릭 시 커서의 세로 위치를 화면 좌표로 지정합니다.

반환 값

반환 값이 없습니다.

설명

창은 TrackPopupMenu 또는 TrackPopupMenuEx 함수를 사용하여 바로 가기 메뉴를 표시하여 이 메시지를 처리할 수 있습니다. 가로 및 세로 위치를 가져오려면 다음 코드를 사용합니다.

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

창에 바로 가기 메뉴가 표시되지 않으면 이 메시지를 DefWindowProc 함수에 전달해야 합니다. 창이 자식 창인 경우 DefWindowProc 는 부모에게 메시지를 보냅니다. 그렇지 않으면 지정된 위치가 창의 캡션 있는 경우 DefWindowProc에 기본 바로 가기 메뉴가 표시됩니다.

DefWindowProcWM_RBUTTONUP 또는 WM_NCRBUTTONUP 메시지를 처리하거나 사용자가 SHIFT+F10을 입력할 때 WM_CONTEXTMENU 메시지를 생성합니다. WM_CONTEXTMENU 메시지는 사용자가 VK_APPS 키를 누르고 놓을 때도 생성됩니다.

예를 들어 키보드에서 상황에 맞는 메뉴가 생성된 경우 사용자가 SHIFT+F10을 입력하면 x- 및 y 좌표는 -1이고 애플리케이션은 (xPos, yPos)가 아닌 현재 선택 영역의 위치에 상황에 맞는 메뉴를 표시해야 합니다.

요구 사항

요구 사항
지원되는 최소 클라이언트
Windows 2000 Professional[데스크톱 앱만]
지원되는 최소 서버
Windows 2000 Server[데스크톱 앱만]
헤더
Winuser.h(Windows.h 포함)

추가 정보

참조

DefWindowProc

GET_X_LPARAM

GET_Y_LPARAM

TrackPopupMenu

TrackPopupMenuEx

WM_NCRBUTTONUP

WM_RBUTTONUP

개념

메뉴