MessageBoxEx

A função MessageBoxEx cria, exibe e opera uma caixa de mensagem. A caixa de mensagem contém uma mensagem application-defined e título, além de qualquer combinação dos ícones predefinidos e botões enviar. O parâmetro wLanguageId especifica qual conjunto de recursos de idioma é usado para os botões predefinidos. Para obter descrições completas dos outros parâmetros de MessageBoxEx, consulte MessageBox.

int MessageBoxEx ( HWND  hWnd, / / identificador da janela do proprietárioLPCTSTRlpText, / / endereço de texto na caixa de mensagemLPCTSTRlpCaption, / / endereço de título da caixa de mensagemUINTuType, / / estilo de caixa de mensagemPalavrawLanguageId / / identificador linguagem);
 

Parâmetros

hWnd
Identifica a janela do proprietário da caixa de mensagem a ser criado. Se este parâmetro é NULL, a caixa de mensagem tem não janela proprietário.
lpCaption
Ponteiro para uma seqüência de caracteres null-terminated que contém a mensagem a ser exibida.
lpszTitle
Ponteiro para um seqüência de caracteres null-terminated usado para o título da caixa de diálogo. Se este parâmetro é NULL, o título padrão erro é usado.
uType
Especifica um conjunto de bit sinalizadores que determinam o conteúdo e comportamento da caixa de diálogo. Este parâmetro pode ser uma combinação de sinalizadores dos seguintes grupos de sinalizadores.

Especifique uma do seguinte sinalizadores para indicar os botões contidos na caixa de mensagem:
Bandeira Significado
MB_ABORTRETRYIGNORE A caixa de mensagem contém três botões: anular, Repetire e ignorar.
MB_OK A caixa de mensagem contém um botão de ação: OK. Este é o padrão.
MB_OKCANCEL A caixa de mensagem contém dois botões enviar: OK e cancelar.
MB_RETRYCANCEL A caixa de mensagem contém dois botões enviar: repetir e cancelar.
MB_YESNO A caixa de mensagem contém dois botões enviar: Sim e não.
MB_YESNOCANCEL A caixa de mensagem contém três botões enviar: Sim, não e cancelar.

Especifique uma do seguinte sinalizadores para exibir um ícone na caixa de mensagem:
Bandeira Significado
MB_ICONEXCLAMATION,
MB_ICONWARNING
Um ícone de ponto de exclamação aparece na caixa de mensagem.
MB_ICONINFORMATION, MB_ICONASTERISK
Um ícone consistindo de uma letra minúscula i em um círculo aparece na caixa de mensagem.
MB_ICONQUESTION Aparece um ícone de ponto de interrogação na caixa de mensagem.
MB_ICONSTOP,
MB_ICONERROR,
MB_ICONHAND
Um ícone de sinal de parada é exibida na caixa de mensagem.

Especifique uma do seguinte sinalizadores para indicar o botão padrão:
Bandeira Significado
MB_DEFBUTTON1 O primeiro botão é o botão padrão.

MB_DEFBUTTON1 é o padrão a menos que MB_DEFBUTTON2, MB_DEFBUTTON3 ou MB_DEFBUTTON4 é especificado.

MB_DEFBUTTON2 O segundo botão é o botão padrão.
MB_DEFBUTTON3 O terceiro botão é o botão padrão.
MB_DEFBUTTON4 O quarto botão é o botão padrão.

Especifique uma do seguinte sinalizadores para indicar a modalidade da caixa de diálogo:
Bandeira Significado
MB_APPLMODAL O usuário deve responder à caixa de mensagem antes de continuar o trabalho na janela identificada pelo hWnd parâmetro. No entanto, o usuário pode mover-se para as janelas de outros segmentos e trabalho nessas janelas.

Dependendo da hierarquia de janelas no aplicativo, o usuário pode ser capaz de se mover para outras janelas dentro de segmento. Todas as janelas filho do pai da caixa de mensagem são automaticamente desativadas, mas as janelas pop-up não são.

MB_APPLMODAL é o padrão se nem MB_SYSTEMMODAL MB_TASKMODAL for especificado.

MB_SYSTEMMODAL Mesmo como MB_APPLMODAL, exceto que a caixa de mensagem tem o estilo WS_EX_TOPMOST. Use caixas de mensagem modal de sistema para notificar o usuário de grave, potencialmente prejudicial erros que exigem atenção imediata (por exemplo, falta de memória). Este sinalizador não tem efeito sobre a capacidade do usuário para interagir com o windows do que aquelas associadas ao hWnd.
MB_TASKMODAL Mesmo como MB_APPLMODAL exceto que todas as janelas de nível superior pertencentes ao thread atual são desabilitadas se a pasta hWnd parâmetro é NULL. Usar este sinalizador quando o aplicativo de chamada ou biblioteca não tem um identificador de janela disponível mas ainda precisa evitar a entrada para outros windows in the segmento chamado sem suspender outros threads.

Além disso, você pode especificar os sinalizadores a seguir:

MB_DEFAULT_DESKTOP_ONLY
A área de trabalho recebendo entrada deve ser um desktop padrão; caso contrário, a função falhará. Uma área de trabalho padrão é um um aplicativo é executado em, depois que o usuário tenha feito logon.
MB_HELP
Adiciona um botão Ajuda à caixa de mensagem. Escolhendo o botão Ajuda ou pressionando F1 gera um evento de ajuda.
MB_RIGHT
O texto é justificado à direita.
MB_RTLREADING
Exibe o texto de mensagem e legenda usando ordem de leitura da direita para a esquerda nos sistemas hebraico e árabe.
MB_SETFOREGROUND
A caixa de mensagem torna-se a janela primeiro plano. Internamente, o sistema chama o SetForegroundWindow função para caixa de mensagem.
MB_TOPMOST
A caixa de mensagem é criada com o estilo de janela WS_EX_TOPMOST.
MB_SERVICE_NOTIFICATION
Windows NT: O chamador é um serviço que notifica o usuário de um evento. A função exibe uma caixa de mensagem na área de trabalho ativa atual, mesmo se não há nenhum usuário conectado ao computador.

Se este sinalizador estiver definido, o hWnd parâmetro deve ser NULL. Isso é para a caixa de mensagem pode aparecer em um desktop que não a correspondente área de trabalho para o hWnd.

Para o Windows NT versão 4.0, o valor de MB_SERVICE_NOTIFICATION foi alterado. Consulte WINUSER.H, para os valores antigos e novos. Windows NT 4.0 fornece compatibilidade com versões anteriores para serviços pré-existentes, mapeando o valor antigo para o novo valor na implementação de MessageBox e MessageBoxEx. Este mapeamento é feito apenas para arquivos executáveis que possuem um número de versão, conforme definido pelo vinculador, inferior a 4,0.

Para criar um serviço que usa MB_SERVICE_NOTIFICATION e pode ser executado em Windows NT 3. x e Windows NT 4.0, você tem duas escolhas.
  1. Em tempo de ligação, especifique um número de versão inferior a 4.0; ou
nbsp;   2. Em tempo de ligação, especifica versão 4.0. Em tempo de execução, use a função GetVersionEx para verificar a versão do sistema. Em seguida, quando em execução no Windows &NT 3. x, use MB_SERVICE_NOTIFICATION_NT3X; e no Windows NT 4.0, use MB_SERVICE_NOTIFICATION.

MB_SERVICE_NOTIFICATION_NT3X
Windows NT: Esse valor corresponde ao valor definido para MB_SERVICE_NOTIFICATION para Windows NT versão 3.51.
wLanguageId
Especifica o idioma no qual exibir o texto contido nos botões predefinidos. Este valor deve estar no formulário retornado pelo MAKELANGID macro.

Para obter uma lista dos identificadores de idioma suportado pelo Win32, consulte Identificadores de idioma. Observe que cada localizadas versão do Windows e Windows NT normalmente contém recursos apenas para um conjunto limitado de idiomas. Assim, por exemplo, a versão dos EUA oferece LANG_PORTUGUESE, versão francesa oferece LANG_FRENCH, a versão em alemão oferece LANG_GERMAN e a versão japonesa oferece LANG_JAPANESE. Cada versão oferece LANG_NEUTRAL. Isso limita o conjunto de valores que podem ser usados com o parâmetro de wLanguageId . Antes de especificar um identificador de idioma, você deve enumerar as localidades que estão instaladas em um sistema.

Retornar valores

Se a função for bem-sucedido, o valor de retorno é um valor diferente de zero do item de menu retornado pela caixa de diálogo.

Valor Significado
IDABORT Anular botão foi selecionado.
IDCANCEL Cancelar botão foi selecionado.
IDIGNORE Ignorar botão foi selecionado.
IDNO Nenhum botão foi selecionado.
IDOK OK botão foi selecionado.
IDRETRY Repetir botão foi selecionado.
IDYES Sim botão foi selecionado.

Se uma caixa de mensagem tem um botão Cancelar, a função retornará o valor IDCANCEL quando a tecla esc ou Cancelar botão é pressionado. Se a caixa de mensagem com nenhum botão Cancelar, pressionando a tecla esc tem nenhum efeito.

Se a função falhar, o valor de retorno é zero. Para informações de erro estendidas get, chamar GetLastError.

Observações

Quando você cria uma caixa de mensagem modal de sistema para indicar que o sistema está com pouco memória, as seqüências de caracteres passadas como os parâmetros lpText e lpCaption não devem ser tomadas de um arquivo de recurso, porque uma tentativa para carregar o recurso pode falhar.

Quando um aplicativo chama a função MessageBoxEx e especifica os sinalizadores para o parâmetro uType MB_ICONHAND e MB_SYSTEMMODAL, a API do Win32 exibe a caixa de mensagem resultante independentemente da memória disponível. Quando você especifica esses sinalizadores, o sistema limita o ComComprimento do texto caixa de mensagem para uma linha.

Se você criar uma caixa de mensagem enquanto uma caixa de diálogo estiver presente, use o identificador da caixa de diálogo como o parâmetro de hWnd . O hWnd parâmetro não deve identificar uma janela filho, como uma caixa de diálogo.

Windows 95:O sistema pode oferecer suporte a um máximo de 16.364 identificadores de janela.

QuickInfo

nbsp; Windows &NT: requer a versão 3.1 ou posterior.
Windows:Requer o Windows 95 ou posterior.
Windows CE:Sem suporte.
Cabeçalho:Declarado em WinUser. h.
Biblioteca de importação:Use user32.lib.
Unicode:Implementado como versões Unicode e ANSI no Windows e Windows NT.

Ver também

Visão geral de caixas de diálogo, funções de caixa de diálogo, MAKELANGID, MessageBeep,MessageBox , MessageBoxIndirect, SetForegroundWindow

Index