Condividi tramite


Metodo IContextMenu2::HandleMenuMsg (shobjidl_core.h)

Consente agli oggetti client dell'interfaccia IContextMenu di gestire i messaggi associati alle voci di menu disegnate dal proprietario.

Sintassi

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

Parametri

uMsg

Tipo: UINT

Messaggio da elaborare. Nel caso di alcuni messaggi, ad esempio WM_INITMENUPOPUP, WM_DRAWITEM, WM_MENUCHAR o WM_MEASUREITEM, l'oggetto client chiamato può fornire voci di menu disegnate dal proprietario.

wParam

Tipo: WPARAM

Informazioni aggiuntive sui messaggi. Il valore di questo parametro dipende dal valore del parametro uMsg .

lParam

Tipo: LPARAM

Informazioni aggiuntive sui messaggi. Il valore di questo parametro dipende dal valore del parametro uMsg .

Valore restituito

Tipo: HRESULT

Se questo metodo ha esito positivo, restituisce S_OK. In caso contrario, restituisce un codice di errore HRESULT .

Commenti

IContextMenu2::HandleMenuMsg è in genere sostituito da HandleMenuMsg2. HandleMenuMsg2 viene chiamato quando IContextMenu determina che IContextMenu3 è supportato e riceve uno dei messaggi specificati nella descrizione del parametro uMsg. Tuttavia, in alcuni casi, IContextMenu2::HandleMenuMsg è ancora chiamato.

Se è necessario IContextMenu2 o IContextMenu3, l'implementazione migliore per i nuovi menu di scelta rapida consiste nell'implementare tutta la logica in HandleMenuMsg2 e avere l'implementazione IContextMenu2::HandleMenuMsgg semplicemente delegare la chiamata a HandleMenuMsg2 e passare NULL come parametro plResult.

Nota Se IContextMenu3 non è implementato, non vi è alcuna garanzia che IContextMenu2 verrà chiamato al suo posto. In alcuni casi, l'assenza di IContextMenu3 viene determinata e quindi il processo viene arrestato.
 

Requisiti

   
Client minimo supportato Windows XP [solo app desktop]
Server minimo supportato Windows 2000 Server [solo app desktop]
Piattaforma di destinazione Windows
Intestazione shobjidl_core.h (include Shobjidl.h)
DLL Shell32.dll (versione 4.0 o successiva)

Vedi anche

HandleMenuMsg2

IContextMenu2