Функция TrackPopupMenu выводит контекстное меню в заданном месте и отслеживает выбор пунктов в меню. В контекстном меню может находиться в любом на экране.
(BOOL TrackPopupMenu HMENU hMenu, / / обработать контекстное менюUINTuFlags, / / экран позиции и кнопкой мыши флагиint x, / / горизонтальное положение на экране координируетint y, / / координирует вертикальное положение на экране intnReserved, / / зарезервирован, должен быть равен нулюHWNDhWnd, / / дескриптор окна-владельцаCONST RECT* prcRect / / игнорируется);
Используйте один из следующих констант флаг бит для указания как функция размещает в контекстном меню горизонтально.
Значение | Значение |
---|---|
TPM_CENTERALIGN | Если этот флаг указан, функция центров контекстного меню, по горизонтали относительно координат, указанных в параметре x. |
TPM_LEFTALIGN | Если этот флаг указан, функция размещает в контекстном меню таким образом, чтобы его левой стороне выравнивается с координатой, указанный параметром x. |
TPM_RIGHTALIGN | Размещает в контекстном меню таким образом, чтобы его правой стороны выравнивается с координатой, указанный параметром x. |
Используйте один из следующих констант флаг бит для указания как функция размещает в контекстном меню вертикально.
Значение | Значение |
---|---|
TPM_BOTTOMALIGN | Если этот флаг указан, функция размещает в контекстном меню таким образом, чтобы его нижней стороне была совмещена с заданным параметром y координаты. |
TPM_TOPALIGN | Если этот флаг указан, функция размещает в контекстном меню таким образом, чтобы его верхней стороне была совмещена с заданным параметром y координаты. |
TPM_VCENTERALIGN | Если этот флаг указан, функция центров контекстного меню по вертикали относительно координат, указанных в параметре y. |
Используйте следующие константы флага бит для определения выбора пользователя без необходимости настраивать родительского окна для меню.
Значение | Значение |
---|---|
TPM_NONOTIFY | Если этот флаг установлен, функция не отправляет сообщения уведомления, когда пользователь выбирает пункт меню. |
TPM_RETURNCMD | Если этот флаг указан, функция возвращает идентификатор элемента меню от выбора пользователя в возвращаемое значение. |
Использование одного из следующих бит флага константы для указания, что мыши кнопку контекстного меню треки.
Значение | Значение |
---|---|
TPM_LEFTBUTTON | Если этот флаг установлен, пользователь может выбрать пункты меню с только левой кнопкой мыши. |
TPM_RIGHTBUTTON | Если этот флаг установлен, пользователь может выбрать пункты меню с как левой и правой кнопок мыши. |
Если TPM_NONOTIFY указан в параметре uFlags , функция не отправляет сообщения в окно, выявленным hWnd. Однако по-прежнему необходимо передать дескриптор окна hWnd. Это может быть любой дескриптор окна из вашего приложения.
Если TPM_RETURNCMD указан в параметре uFlags , возвращаемое значение является идентификатором элемента меню элемента, выбранного пользователем. Если пользователь отменяет меню без делать выбор, или если произошла ошибка, то возвращаемое значение равно нулю.
Если TPM_RETURNCMD не указан в параметре uFlags , возвращаемое значение равно нулю, если функция успешно выполняется и нуль, если она не сможет. Чтобы получить расширенные сведения об ошибке, вызовите GetLastError.
Windows CE: Windows CE не поддерживает следующие флаги для параметра uFlags
TPM_NONOTIFY
TPM_LEFTBUTTON
TPM_RIGHTBUTTON
nbsp; Windows &NT: требует версии 3.1 или более поздней версии.
Windows:Требует Windows 95 или более поздней версии.
Windows CE:Требует версии 1.0 или более поздней версии.
Заголовок:Объявленные в winuser.h.
Импорта библиотеки:Использование user32.lib.
Обзор меню, меню функции, CreatePopupMenu, GetSubMenu, RECT, WM_COMMAND