Share via


Método ITfMenu::AddMenuItem (ctfutb.h)

Agrega un elemento al menú que se mostrará la barra de idioma para el botón.

Sintaxis

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

Parámetros

[in] uId

Contiene el identificador del elemento de menú.

[in] dwFlags

Contiene cero o una combinación de uno o varios de los valores de TF_LBMENUF_* que especifican el tipo y el estado del elemento de menú.

[in] hbmp

Contiene el identificador del mapa de bits dibujado para el elemento de menú. Si es NULL, no se muestra ningún mapa de bits para el elemento de menú.

[in] hbmpMask

Contiene el identificador del mapa de bits de máscara. Se trata de un mapa de bits monocromo que funciona como máscara para hbmp. Cada píxel negro de este mapa de bits hará que el píxel correspondiente en hbmp se muestre en su color normal. Cada píxel blanco de este mapa de bits hará que el píxel correspondiente en hbmp se muestre en el inverso de su color normal.

Para que el mapa de bits se muestre sin ninguna conversión de color, cree un mapa de bits monocromo con el mismo tamaño que hbmp y establezca cada píxel en negro (RGB(0, 0, 0)).

Si hbmp es NULL, este parámetro se omite.

[in] pch

Puntero a un búfer WCHAR que contiene el texto que se va a mostrar para el elemento de menú. CCH especifica la longitud del texto.

[in] cch

Especifica la longitud, en WCHAR, del texto del elemento de menú en pch.

ppMenu

[dentro, fuera] Puntero a un puntero de interfaz ITfMenu que recibe el objeto de submenú. Este parámetro no se usa y debe ser NULL si dwFlags no contiene TF_LBMENUF_SUBMENU.

Si el elemento del submenú se crea correctamente, este parámetro recibe un objeto ITfMenu que el autor de la llamada usa para agregar elementos al submenú.

Si dwFlags contiene TF_LBMENUF_SUBMENU, este valor se debe inicializar en NULL antes de llamar a este método porque, en la mayoría de los casos, se trata de una llamada serializada. Si no se inicializa esta variable, el serializador intenta acceder a la memoria aleatoria.

Valor devuelto

Este método puede devolver uno de estos valores.

Valor Descripción
S_OK
Método realizado correctamente.
E_FAIL
Se ha producido un error no especificado.
E_OUTOFMEMORY
Error de asignación de memoria.

Requisitos

   
Cliente mínimo compatible Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows 2000 Server [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado ctfutb.h
Archivo DLL Msctf.dll
Redistribuible TSF 1.0 en Windows 2000 Professional

Consulte también

ITfMenu

TF_LBMENUF_* (constantes)