Condividi tramite


Metodo ITfMenu::AddMenuItem (ctfutb.h)

Aggiunge un elemento al menu visualizzato dalla barra della lingua per il pulsante.

Sintassi

HRESULT AddMenuItem(
  [in] UINT        uId,
  [in] DWORD       dwFlags,
  [in] HBITMAP     hbmp,
  [in] HBITMAP     hbmpMask,
  [in] const WCHAR *pch,
  [in] ULONG       cch,
       ITfMenu     **ppMenu
);

Parametri

[in] uId

Contiene l'identificatore della voce di menu.

[in] dwFlags

Contiene zero o una combinazione di uno o più valori TF_LBMENUF_* che specificano il tipo e lo stato della voce di menu.

[in] hbmp

Contiene l'handle della bitmap disegnata per la voce di menu. Se si tratta di NULL, non viene visualizzata alcuna bitmap per la voce di menu.

[in] hbmpMask

Contiene l'handle della bitmap della maschera. Si tratta di una bitmap monocromatica che funziona come maschera per hbmp. Ogni pixel nero in questa bitmap causerà la visualizzazione del pixel corrispondente in hbmp nel suo colore normale. Ogni pixel bianco in questa bitmap causerà la visualizzazione del pixel corrispondente in hbmp nell'inverso del colore normale.

Per avere la bitmap visualizzata senza alcuna conversione dei colori, creare una bitmap monocromatica la stessa dimensione di hbmp e impostare ogni pixel su nero (RGB(0, 0, 0, 0)).

Se hbmp è NULL, questo parametro viene ignorato.

[in] pch

Puntatore a un buffer WCHAR che contiene il testo da visualizzare per la voce di menu. La lunghezza del testo viene specificata da cch.

[in] cch

Specifica la lunghezza, in WCHAR, del testo della voce di menu in pch.

ppMenu

[in, out] Puntatore a un puntatore dell'interfaccia ITfMenu che riceve l'oggetto sottomenu. Questo parametro non viene usato e deve essere NULL se dwFlags non contiene TF_LBMENUF_SUBMENU.

Se l'elemento sottomenu viene creato correttamente, questo parametro riceve un oggetto ITfMenu usato dal chiamante per aggiungere elementi al sottomenu.

Se dwFlags contiene TF_LBMENUF_SUBMENU, questo valore deve essere inizializzato su NULL prima di chiamare questo metodo perché, nella maggior parte dei casi, si tratta di una chiamata marshalled. Non inizializzando questa variabile, il marshaller tenta di accedere alla memoria casuale.

Valore restituito

Questo metodo può restituire uno di questi valori.

Valore Descrizione
S_OK
Il metodo è stato eseguito correttamente.
E_FAIL
Si è verificato un errore non specificato.
E_OUTOFMEMORY
Si è verificato un errore di allocazione della memoria.

Requisiti

   
Client minimo supportato Windows 2000 Professional [solo app desktop]
Server minimo supportato Windows 2000 Server [solo app desktop]
Piattaforma di destinazione Windows
Intestazione ctfutb.h
DLL Msctf.dll
Componente ridistribuibile TSF 1.0 in Windows 2000 Professional

Vedi anche

ITfMenu

costanti TF_LBMENUF_*