Share via


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_TOPMPPF_LEFTMPPF_RIGHT

MPPF_ALIGN_LEFT (0x02000000)

默認對齊方式。

MPPF_ALIGN_RIGHT (0x04000000)

快捷功能表應該對齊 中國所指定之排除矩形的右邊。

傳回值

類型: HRESULT

如果對象實作快捷功能表做為無模式功能表,則傳回 S_OK 。 否則,會傳回 S_FALSE,表示功能表的實作結尾。

規格需求

需求
最低支援的用戶端 Windows XP with SP1 [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2003 [僅限桌面應用程式]
目標平台 Windows
標頭 shobjidl_core.h (包含 Shobjidl.h)
Dll Shell32.dll (5.0 版或更新版本)