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.
Este tópico contém procedimentos para:
Exiba uma caixa de diálogo modal através de um comando de menu.
Exiba uma caixa de diálogo sem moderação através de um comando de menu.
Ambos os procedimentos de exemplo são para aplicativos MFC e funcionarão em um aplicativo que você criar com o MFC Application Wizard.
Os procedimentos usam os seguintes nomes e valores:
| Iteme | Nome ou valor |
|---|---|
| Aplicação | DisplayDialog |
| Comando de Menu | Comando Testar no menu Ver; ID do comando = ID_VIEW_TEST |
| Caixa de diálogo | Caixa de diálogo Teste; Classe = CTestDialog; Arquivo de cabeçalho = TestDialog.h; Variável = testdlg, ptestdlg |
| Manipulador de comandos | OnViewTest |
Para exibir uma caixa de diálogo modal
Criar o comando de menu; consulte Criação de menus ou itens de menu.
Criar a caixa de diálogo; consulte Iniciando o Editor de diálogo.
Adicione uma classe para sua caixa de diálogo. Consulte Adicionando uma classe para obter mais informações.
Em Modo de Exibição de Classe, selecione a classe de documento (CDisplayDialogDoc). Na janela Propriedades , clique no botão Eventos . Clique duas vezes no ID do comando de menu (ID_VIEW_TEST). Em seguida, clique na seta para baixo e selecione <Adicionar> OnViewTest.
Caso tenhas adicionado o comando de menu à janela principal de uma aplicação MDI, seleciona a classe da aplicação (CDisplayDialogApp).
Adicione a seguinte instrução include à CDisplayDialogDoc.cpp (ou CDisplayDialogApp.cpp) após as instruções include existentes:
#include "TestDialog.h"Adicione o seguinte código em
OnViewTestpara implementar a função:CTestDialog testdlg; testdlg.DoModal();
Para exibir uma caixa de diálogo não modal
Execute as quatro primeiras etapas para exibir uma caixa de diálogo modal, exceto selecione a classe view (CDisplayDialogView) na etapa 4.
Edite DisplayDialogView.h:
- Declare a classe da caixa de diálogo que precede a declaração da primeira classe:
class CTestDialog;- Declare um ponteiro para a caixa de diálogo após a seção pública de Atributos:
CTestDialog* m_pTestDlg;Editar DisplayDialogView.cpp:
- Adicione a seguinte declaração de inclusão após as declarações de inclusão existentes:
#include "TestDialog.h"- Adicione o seguinte código ao construtor:
m_pTestDlg = NULL;- Adicione o seguinte código ao destruidor:
delete m_pTestDlg;- Adicione o seguinte código em
OnViewTestpara implementar a função:
if (NULL == m_pTestDlg) { m_pTestDlg = new CTestDialog(this); m_pTestDlg->Create(CTestDialog::IDD, this); } m_pTestDlg->ShowWindow(SW_SHOW);