Partilhar via


Caixas de diálogo (caixas de diálogo)

Uma caixa de diálogo é uma janela temporária que um aplicativo cria para recuperar a entrada do usuário. Um aplicativo normalmente usa caixas de diálogo para solicitar ao usuário informações adicionais para itens de menu. Uma caixa de diálogo geralmente contém um ou mais controles (janelas filhas) com os quais o usuário insere texto, escolhe opções ou direciona a ação.

O Windows também fornece caixas de diálogo predefinidas que suportam itens de menu comuns, como Abrir e Imprimir. Os aplicativos que usam esses itens de menu devem usar as caixas de diálogo comuns para solicitar essa entrada do usuário, independentemente do tipo de aplicativo.

Nesta secção

Designação Descrição
Sobre caixas de diálogo Discute o uso de caixas de diálogo na interface do usuário para seus aplicativos.
Considerações de programação da caixa de diálogo Esta visão geral discute algumas considerações de programação relativas a caixas de diálogo.
Usando caixas de diálogo Você usa caixas de diálogo para exibir informações e solicitar a entrada do usuário.
de referência da caixa de diálogo A referência da API
Biblioteca de caixa de diálogo comum Discute o uso das caixas de diálogo comuns na interface do usuário para seus aplicativos.

Funções da caixa de diálogo

Designação Descrição
CreateDialog Cria uma caixa de diálogo sem janela restrita a partir de um recurso de modelo de caixa de diálogo.
CreateDialogIndirect Cria uma caixa de diálogo sem janela restrita a partir de um modelo de caixa de diálogo na memória.
CreateDialogIndirectParam Cria uma caixa de diálogo sem janela restrita a partir de um modelo de caixa de diálogo na memória. Antes de exibir a caixa de diálogo, a função passa um valor definido pelo aplicativo para o procedimento da caixa de diálogo como o parâmetro lParam da mensagem WM_INITDIALOG. Um aplicativo pode usar esse valor para inicializar controles de caixa de diálogo.
CreateDialogParam Cria uma caixa de diálogo sem janela restrita a partir de um recurso de modelo de caixa de diálogo. Antes de exibir a caixa de diálogo, a função passa um valor definido pelo aplicativo para o procedimento da caixa de diálogo como o parâmetro lParam da mensagem WM_INITDIALOG. Um aplicativo pode usar esse valor para inicializar controles de caixa de diálogo.
DefDlgProc Chama o procedimento de janela de caixa de diálogo padrão para fornecer processamento padrão para quaisquer mensagens de janela que uma caixa de diálogo com uma classe de janela privada não processa.
DialogBox Cria uma caixa de diálogo modal a partir de um recurso de modelo de caixa de diálogo. DialogBox não retorna o controle até que a função de retorno de chamada especificada encerre a caixa de diálogo modal chamando a funçãoEndDialog.
DialogBoxIndirect Cria uma caixa de diálogo modal a partir de um modelo de caixa de diálogo na memória. DialogBoxIndirect não retorna o controle até que a função de retorno de chamada especificada encerre a caixa de diálogo modal chamando a funçãoEndDialog.
DialogBoxIndirectParam Cria uma caixa de diálogo modal a partir de um modelo de caixa de diálogo na memória. Antes de exibir a caixa de diálogo, a função passa um valor definido pelo aplicativo para o procedimento da caixa de diálogo como o parâmetro lParam da mensagem WM_INITDIALOG. Um aplicativo pode usar esse valor para inicializar controles de caixa de diálogo.
DialogBoxParam Cria uma caixa de diálogo modal a partir de um recurso de modelo de caixa de diálogo. Antes de exibir a caixa de diálogo, a função passa um valor definido pelo aplicativo para o procedimento da caixa de diálogo como o parâmetro lParam da mensagem WM_INITDIALOG. Um aplicativo pode usar esse valor para inicializar controles de caixa de diálogo.
DialogProc Uma função de retorno de chamada definida pelo aplicativo usada com o CreateDialog e DialogBox famílias de funções. Processa mensagens enviadas para uma caixa de diálogo modal ou sem modo. O tipo de DLGPROC define um ponteiro para essa função de retorno de chamada. DialogProc é um espaço reservado para o nome da função definida pelo aplicativo.
EndDialog Destrói uma caixa de diálogo modal, fazendo com que o sistema encerre qualquer processamento para a caixa de diálogo.
GetDialogBaseUnits Recupera as unidades base de diálogo do sistema, que são a largura e a altura médias dos caracteres na fonte do sistema. Para caixas de diálogo que usam a fonte do sistema, você pode usar esses valores para converter entre unidades de modelo de diálogo, conforme especificado em modelos de caixa de diálogo, e pixels. Para caixas de diálogo que não usam a fonte do sistema, a conversão de unidades de modelo de diálogo para pixels depende da fonte usada pela caixa de diálogo.
GetDlgCtrlID Recupera o identificador do controle especificado.
GetDlgItem Recupera um identificador para um controle na caixa de diálogo especificada.
GetDlgItemInt Traduz o texto de um controle especificado em uma caixa de diálogo em um valor inteiro.
GetDlgItemText Recupera o título ou texto associado a um controle em uma caixa de diálogo.
GetNextDlgGroupItem Recupera um identificador para o primeiro controle em um grupo de controles que precede (ou segue) o controle especificado em uma caixa de diálogo.
GetNextDlgTabItem Recupera um identificador para o primeiro controle que tem o estilo WS_TABSTOP que precede (ou segue) o controle especificado.
IsDialogMessage Determina se uma mensagem se destina à caixa de diálogo especificada e, se for, processa a mensagem.
MapDialogRect Converte as unidades de caixa de diálogo especificadas em unidades de tela (pixels). A função substitui as coordenadas na estrutura deRECT especificadacom as coordenadas convertidas, o que permite que a estrutura seja usada para criar uma caixa de diálogo ou posicionar um controle dentro de uma caixa de diálogo.
MessageBox Exibe uma caixa de diálogo modal que contém um ícone do sistema, um conjunto de botões e uma breve mensagem específica do aplicativo, como informações de status ou erro. A caixa de mensagem retorna um valor inteiro que indica em qual botão o usuário clicou.
MessageBoxEx Cria, exibe e opera uma caixa de mensagem. A caixa de mensagem contém uma mensagem e um título definidos pelo aplicativo, além de qualquer combinação de ícones predefinidos e botões de pressão. Os botões estão no idioma da interface do usuário do sistema.
MessageBoxIndirect Cria, exibe e opera uma caixa de mensagem. A caixa de mensagem contém texto e título da mensagem definidos pelo aplicativo, qualquer ícone e qualquer combinação de botões predefinidos.
SendDlgItemMessage Envia uma mensagem para o controle especificado em uma caixa de diálogo.
SetDlgItemInt Define o texto de um controle em uma caixa de diálogo para a representação de cadeia de caracteres de um valor inteiro especificado.
SetDlgItemText Define o título ou o texto de um controle em uma caixa de diálogo.

Mensagens da caixa de diálogo

Designação Descrição
DM_GETDEFID Recupera o identificador do controle de botão padrão para uma caixa de diálogo.
DM_REPOSITION Reposiciona uma caixa de diálogo de nível superior para que ela caiba na área da área de trabalho. Um aplicativo pode enviar essa mensagem para uma caixa de diálogo depois de redimensioná-la para garantir que toda a caixa de diálogo permaneça visível.
DM_SETDEFID Altera o identificador do botão de pressão padrão de uma caixa de diálogo.

Notificações da caixa de diálogo

Designação Descrição
WM_CTLCOLORDLG Enviado para uma caixa de diálogo antes de o sistema desenhar a caixa de diálogo. Ao responder a essa mensagem, a caixa de diálogo pode definir suas cores de texto e plano de fundo usando o identificador de contexto do dispositivo de exibição especificado.
WM_ENTERIDLE Enviado para a janela do proprietário de uma caixa de diálogo modal ou menu que está entrando em um estado ocioso. Uma caixa de diálogo modal ou menu entra em um estado ocioso quando nenhuma mensagem está aguardando em sua fila depois de ter processado uma ou mais mensagens anteriores.
WM_GETDLGCODE Enviado para o procedimento de janela associado a um controle. Por padrão, o sistema lida com toda a entrada do teclado para o controle; O sistema interpreta certos tipos de entrada do teclado como teclas de navegação da caixa de diálogo. Para substituir esse comportamento padrão, o controle pode responder à mensagem WM_GETDLGCODE para indicar os tipos de entrada que ele deseja processar.
WM_INITDIALOG Enviado para o procedimento da caixa de diálogo imediatamente antes de uma caixa de diálogo ser exibida. Os procedimentos da caixa de diálogo normalmente usam essa mensagem para inicializar controles e executar quaisquer outras tarefas de inicialização que afetem a aparência da caixa de diálogo.
WM_NEXTDLGCTL Enviado para um procedimento de caixa de diálogo para definir o foco do teclado para um controle diferente na caixa de diálogo.

Estruturas da caixa de diálogo

Designação Descrição
DLGITEMTEMPLATE Define as dimensões e o estilo de um controle em uma caixa de diálogo. Uma ou mais dessas estruturas são combinadas com um estrutura de DLGTEMPLATE para formar um modelo padrão para uma caixa de diálogo.
DLGITEMTEMPLATEEX Descreve uma caixa de diálogo estendida. Para obter uma descrição do formato de um modelo de caixa de diálogo estendida, consulte DLGTEMPLATEEX.
DLGTEMPLATE Define as dimensões e o estilo de uma caixa de diálogo. Essa estrutura, sempre a primeira em um modelo padrão para uma caixa de diálogo, também especifica o número de controles na caixa de diálogo e, portanto, especifica o número de estruturasDLGITEMTEMPLATEsubsequentes no modelo.
DLGTEMPLATEEX Um modelo de caixa de diálogo estendida começa com um cabeçalho de DLGTEMPLATEEX que descreve a caixa de diálogo e especifica o número de controles na caixa de diálogo. Para cada controle em uma caixa de diálogo, um modelo de caixa de diálogo estendida tem um bloco de dados que usa o formato deDLGITEMTEMPLATEEXpara descrever o controle.
MSGBOXPARAMS Contém informações usadas para exibir uma caixa de mensagem. A função MessageBoxIndirect usa essa estrutura.