сообщение 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 отображает контекстное меню по умолчанию, если указанная позиция находится в подпись окна.
DefWindowProc создает сообщение WM_CONTEXTMENU при обработке сообщения WM_RBUTTONUP или WM_NCRBUTTONUP или при вводе пользователем клавиш SHIFT+F10. Сообщение WM_CONTEXTMENU также создается, когда пользователь нажимает и отпускает клавишу VK_APPS .
Если контекстное меню создается с помощью клавиатуры, например, если пользователь вводит shift+F10, координаты x и y имеют значение -1, и приложение должно отображать контекстное меню в месте текущего выбора, а не в (xPos, yPos).
Требования
Требование | Значение |
---|---|
Минимальная версия клиента |
Windows 2000 Professional [только классические приложения] |
Минимальная версия сервера |
Windows 2000 Server [только классические приложения] |
Заголовок |
|
См. также раздел
-
Справочные материалы
-
Основные понятия