Compartir a través de


Método IContextMenu2::HandleMenuMsg (shobjidl_core.h)

Permite que los objetos de cliente de la interfaz IContextMenu controlen los mensajes asociados a los elementos de menú dibujados por el propietario.

Sintaxis

HRESULT HandleMenuMsg(
  UINT   uMsg,
  WPARAM wParam,
  LPARAM lParam
);

Parámetros

uMsg

Tipo: UINT

Mensaje que se va a procesar. En el caso de algunos mensajes, como WM_INITMENUPOPUP, WM_DRAWITEM, WM_MENUCHAR o WM_MEASUREITEM, el objeto de cliente al que se llama puede proporcionar elementos de menú dibujados por el propietario.

wParam

Tipo: WPARAM

Información adicional del mensaje. El valor de este parámetro depende del valor del parámetro uMsg .

lParam

Tipo: LPARAM

Información adicional del mensaje. El valor de este parámetro depende del valor del parámetro uMsg .

Valor devuelto

Tipo: HRESULT

Si este método se realiza correctamente, devuelve S_OK. De lo contrario, devuelve un código de error de HRESULT.

Comentarios

IContextMenu2::HandleMenuMsg suele reemplazarse por HandleMenuMsg2. Se llama a HandleMenuMsg2 cuando IContextMenu determina que se admite IContextMenu3 y recibe uno de los mensajes especificados en la descripción del parámetro uMsg. Sin embargo, en algunos casos, se sigue llamando a IContextMenu2::HandleMenuMsg .

Si se necesita IContextMenu2 o IContextMenu3 , la mejor implementación para los nuevos menús contextuales es implementar toda su lógica en HandleMenuMsg2 y hacer que su implementación de IContextMenu2::HandleMenuMsg simplemente delegue la llamada a HandleMenuMsg2 y pase NULL como el parámetro plResult .

Nota Si no se implementa IContextMenu3 , no hay ninguna garantía de que se llame a IContextMenu2 en su lugar. En algunos casos, se determina la ausencia de IContextMenu3 y, a continuación, se detiene el proceso.
 

Requisitos

   
Cliente mínimo compatible Windows XP [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows 2000 Server [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado shobjidl_core.h (incluya Shobjidl.h)
Archivo DLL Shell32.dll (versión 4.0 o posterior)

Consulte también

HandleMenuMsg2

IContextMenu2