共用方式為


IContextMenu3::HandleMenuMsg2 方法 (shobjidl_core.h)

允許 IContextMenu3 介面的用戶端對象處理與擁有者繪製功能表項相關聯的訊息。

語法

HRESULT HandleMenuMsg2(
  UINT    uMsg,
  WPARAM  wParam,
  LPARAM  lParam,
  LRESULT *plResult
);

參數

uMsg

類型: UINT

要處理的訊息。 在某些訊息的情況下,例如WM_INITMENUPOPUP、WM_DRAWITEM、WM_MENUCHAR或WM_MEASUREITEM,所呼叫的客戶端物件可能會提供擁有者繪製的功能表項。

wParam

類型: WPARAM

其他訊息資訊。 此參數的值取決於 uMsg 參數的值。

lParam

類型: LPARAM

其他訊息資訊。 此參數的值取決於 uMsg 參數的值。

plResult

類型: LRESULT*

功能表擁有者從訊息傳回的 LRESULT 值位址。 此參數可以是 Null

傳回值

類型: HRESULT

如果此方法成功,則會傳回 S_OK。 否則,它會傳回 HRESULT 錯誤碼。

備註

IContextMenu3::HandleMenuMsg2 通常會取代 IContextMenu2::HandleMenuMsg,並在 IContextMenu 判斷支援 IContextMenu3 且收到其中一個支援的訊息時呼叫。 (看到 uMsg) 。 不過,在某些情況下,仍會呼叫 IContextMenu2::HandleMenuMsg 。 操作功能表主機可以透過或兩種方法分派功能表訊息。 因此,如果殼層延伸模塊同時實作 IContextMenu2::HandleMenuMsgIContextMenu3::HandleMenuMsg2,則必須準備功能表訊息才能透過任一方法送達。

注意 如果未實作 IContextMenu3 ,不保證會在其位置呼叫 IContextMenu2 。 在某些情況下,會決定缺少 IContextMenu3 ,然後停止程式。
 

規格需求

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