Поделиться через


Метод IMenuPopup::P opup (shobjidl_core.h)

Вызывает контекстное меню в указанном расположении на экране.

Синтаксис

HRESULT Popup(
  [in] POINTL        *ppt,
  [in] RECTL         *prcExclude,
  [in] MP_POPUPFLAGS dwFlags
);

Параметры

[in] ppt

Тип: POINTL*

Указатель на структуру POINTL , задающую расположение всплывающего меню в координатах экрана. Всплывающее меню отображается по отношению к этой точке в соответствии с флагами позиции, установленными в dwFlags.

[in] prcExclude

Тип: RECTL*

Указатель на структуру RECTL , задающий прямоугольник, исключаемый при расположении меню. В Windows Vista выравнивание меню по отношению к этой области определяется флагами выравнивания, установленными в dwFlags. Этот параметр может иметь значение NULL , чтобы включить весь экран.

[in] dwFlags

Тип: MP_POPUPFLAGS

Одна или несколько из следующих констант, управляющих отображением всплывающего меню.

MPPF_SETFOCUS (0x00000001)

Меню должно иметь фокус, когда оно появится.

MPPF_INITIALSELECT (0x00000002)

Должен быть выбран первый элемент в меню.

MPPF_NOANIMATE (0x00000004)

Не анимируйте это шоу.

MPPF_KEYBOARD (0x00000010)

Меню активируется с помощью клавиатуры.

MPPF_REPOSITION (0x00000020)

Изменение положения отображаемой панели.

MPPF_FORCEZORDER (0x00000040)

В строке меню должны игнорироваться позиции подменю.

MPPF_FINALSELECT (0x00000080)

Должен быть выбран последний элемент в меню.

MPPF_TOP (0x20000000)

Отображение всплывающего меню над точкой, указанной в ppt.

MPPF_LEFT (0x40000000)

Отображение всплывающего меню слева от точки, указанной в ppt.

MPPF_RIGHT (0x60000000)

Отображение всплывающего меню справа от точки, указанной в ppt.

MPPF_BOTTOM (0x80000000)

Отображение всплывающего меню под точкой, указанной в ppt.

MPPF_POS_MASK (0xE0000000)

Маскирование для значений позиции MPPF_TOP, MPPF_LEFT и MPPF_RIGHT.

MPPF_ALIGN_LEFT (0x02000000)

Выравнивание по умолчанию.

MPPF_ALIGN_RIGHT (0x04000000)

Всплывающее меню должно быть выровнено справа от исключенного прямоугольника, указанного параметром prcExclude.

Возвращаемое значение

Тип: HRESULT

Возвращает S_OK , если объект реализует всплывающее меню как меню без режима. В противном случае возвращает S_FALSE, указывающую конец реализации меню.

Требования

Требование Значение
Минимальная версия клиента Windows XP с пакетом обновления 1 (SP1) [только классические приложения]
Минимальная версия сервера Windows Server 2003 [только классические приложения]
Целевая платформа Windows
Header shobjidl_core.h (включая Shobjidl.h)
DLL Shell32.dll (версия 5.0 или более поздняя)