Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Acrescenta um novo item ao final da barra de menus especificada, menu suspenso, submenu ou menu de atalho. Você pode usar essa função para especificar o conteúdo, a aparência e o comportamento do item de menu.
Sintaxe
BOOL AppendMenuA(
[in] HMENU hMenu,
[in] UINT uFlags,
[in] UINT_PTR uIDNewItem,
[in, optional] LPCSTR lpNewItem
);
Parâmetros
[in] hMenu
Tipo: HMENU
Um identificador para a barra de menus, menu suspenso, submenu ou menu de atalho a ser alterado.
[in] uFlags
Tipo: UINT
Controla a aparência e o comportamento do novo item de menu. Esse parâmetro pode ser uma combinação dos valores a seguir.
| Valor | Significado |
|---|---|
|
Usa um bitmap como o item de menu. O parâmetro lpNewItem contém um identificador para o bitmap. |
|
Coloca uma marca de seleção ao lado do item de menu. Se o aplicativo fornecer bitmaps de marca de seleção (consulte SetMenuItemBitmaps, esse sinalizador exibirá o bitmap de marca de seleção ao lado do item de menu. |
|
Desabilita o item de menu para que ele não possa ser selecionado, mas o sinalizador não o cinza. |
|
Habilita o item de menu para que ele possa ser selecionado e restaure-o de seu estado esmaecido. |
|
Desabilita o item de menu e o cinza para que ele não possa ser selecionado. |
|
Funciona da mesma forma que o sinalizador MF_MENUBREAK para uma barra de menus. Para um menu suspenso, submenu ou menu de atalho, a nova coluna é separada da coluna antiga por uma linha vertical. |
|
Coloca o item em uma nova linha (para uma barra de menus) ou em uma nova coluna (para um menu suspenso, submenu ou menu de atalho) sem separar colunas. |
|
Especifica que o item é um item desenhado pelo proprietário. Antes que o menu seja exibido pela primeira vez, a janela que possui o menu recebe uma mensagem WM_MEASUREITEM para recuperar a largura e a altura do item de menu. A mensagem WM_DRAWITEM é enviada para o procedimento de janela da janela do proprietário sempre que a aparência do item de menu deve ser atualizada. |
|
Especifica que o item de menu abre um menu suspenso ou submenu. O parâmetro uIDNewItem especifica um identificador para o menu suspenso ou submenu. Esse sinalizador é usado para adicionar um nome de menu a uma barra de menus ou a um item de menu que abre um submenu em um menu suspenso, submenu ou menu de atalho. |
|
Desenha uma linha divisória horizontal. Esse sinalizador é usado apenas em um menu suspenso, submenu ou menu de atalho. A linha não pode ser esmaeçada, desabilitada ou realçada. Os parâmetros lpNewItem e uIDNewItem são ignorados. |
|
Especifica que o item de menu é uma cadeia de caracteres de texto; o parâmetro lpNewItem é um ponteiro para a cadeia de caracteres. |
|
Não coloca uma marca de seleção ao lado do item (padrão). Se o aplicativo fornecer bitmaps de marca de seleção (consulte SetMenuItemBitmaps), esse sinalizador exibirá o bitmap claro ao lado do item de menu. |
[in] uIDNewItem
Tipo: UINT_PTR
O identificador do novo item de menu ou, se o parâmetro uFlags estiver definido como MF_POPUP, um identificador para o menu suspenso ou submenu.
[in, optional] lpNewItem
Tipo: LPCTSTR
O conteúdo do novo item de menu. A interpretação de lpNewItem depende se o parâmetro uFlags inclui os valores a seguir.
| Valor | Significado |
|---|---|
|
Contém um identificador de bitmap. |
|
Contém um valor fornecido pelo aplicativo que pode ser usado para manter dados adicionais relacionados ao item de menu. O valor está no itemData membro da estrutura apontado pelo parâmetro lParam da mensagem WM_MEASUREITEM ou WM_DRAWITEM enviada quando o menu é criado ou sua aparência é atualizada. |
|
Contém um ponteiro para uma cadeia de caracteres terminada em nulo. |
Valor de retorno
Tipo: BOOL
Se a função for bem-sucedida, o valor retornado não será zero. Se a função falhar, o valor retornado será zero. Para obter informações de erro estendidas, chame GetLastError.
Observações
O aplicativo deve chamar a função DrawMenuBar sempre que um menu for alterado, se o menu estiver em uma janela exibida.
Para que os aceleradores de teclado funcionem com bitmap ou itens de menu desenhados pelo proprietário, o proprietário do menu deve processar a mensagem WM_MENUCHAR. Para obter mais informações, consulte Owner-Drawn Menus e a mensagem WM_MENUCHAR.
Os seguintes grupos de sinalizadores não podem ser usados juntos:
- MF_BITMAP, MF_STRINGe MF_OWNERDRAW
- MF_CHECKED e MF_UNCHECKED
- MF_DISABLED, MF_ENABLEDe MF_GRAYED
- MF_MENUBARBREAK e MF_MENUBREAK
Exemplos
Para obter um exemplo, consulte Adicionando linhas e grafos a um menu.
Nota
O cabeçalho winuser.h define AppendMenu como um alias que seleciona automaticamente a versão ANSI ou Unicode dessa função com base na definição da constante do pré-processador UNICODE. A combinação do uso do alias neutro de codificação com código que não é neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Conventions for Function Prototypes.
Requisitos
| Requisito | Valor |
|---|---|
| de cliente com suporte mínimo | Windows 2000 Professional [somente aplicativos da área de trabalho] |
| servidor com suporte mínimo | Windows 2000 Server [somente aplicativos da área de trabalho] |
| da Plataforma de Destino |
Windows |
| cabeçalho | winuser.h (inclua Windows.h) |
| biblioteca | User32.lib |
| de DLL |
User32.dll |
| conjunto de API | ext-ms-win-ntuser-menu-l1-1-0 (introduzido no Windows 8) |
Consulte também
Conceitual
InsertMenuItem
de referência de