Příklad: Zobrazení dialogového okna pomocí příkazu nabídky
Toto téma obsahuje postupy:
Zobrazení modálního dialogového okna pomocí příkazu nabídky.
Zobrazte nemodální dialogového okna pomocí příkazu nabídky.
Oba vzorové postupy jsou pro aplikace MFC a bude fungovat v aplikaci vytvořit s Průvodce aplikace MFC.
Postupy použít následující názvy a hodnoty:
Položka |
Název nebo hodnotu |
---|---|
Aplikace |
DisplayDialog |
Příkaz nabídky |
Testovací příkaz v nabídce Zobrazit; ID příkazu = ID_VIEW_TEST |
Dialogové okno |
Dialogové okno Test; Třída = CTestDialog; Hlavičkový soubor = TestDialog.h; Proměnná = testdlg, ptestdlg |
Popisovač příkazu |
OnViewTest |
Modální dialogové okno
Vytvořit příkaz nabídky; Viz vytváření nabídek nebo položky nabídky.
Vytvořit dialogové okno; Viz spuštění editoru dialogů.
Přidáte třídy do dialogového okna.Viz Přidání třídy Další informace.
V Zobrazení třídy, vyberte třídu dokumentu (CDisplayDialogDoc).V Vlastnosti okna, klepněte události tlačítko.ID příkazu nabídky (ID_VIEW_TEST) v levém podokně poklepejte Vlastnosti okna a vyberte příkaz.V pravém podokně klepněte na šipku dolů a vyberte <Add> OnViewTest.
Pokud jste přidali příkaz sálové MDI aplikace, vyberte třídu aplikace (CDisplayDialogApp).
Přidat příkaz CDisplayDialogDoc.cpp (nebo CDisplayDialogApp.cpp) zahrnují následující po stávající příkazy patří:
#include "TestDialog.h"
Přidejte následující kód na OnViewTest implementovat funkci:
CTestDialog testdlg; testdlg.DoModal();
Zobrazit nemodální okno
To první čtyři kroky modální dialogové okno, s výjimkou zobrazení třídy (CDisplayDialogView) vyberte v kroku 4.
Upravte DisplayDialogView.h:
Prohlašuji, že pole Třída dialog předcházející první třídy prohlášení:
class CTestDialog;
Prohlašuji, že ukazatel myši do dialogového okna po veřejné části atributy:
CTestDialog* m_pTestDlg;
Upravte DisplayDialogView.cpp:
Přidáte že následující zahrnují prohlášení po stávající příkazy patří:
#include "TestDialog.h"
Konstruktor přidejte následující kód:
m_pTestDlg = NULL;
Se objekt přidejte následující kód:
delete m_pTestDlg;
Přidejte následující kód na OnViewTest implementovat funkci:
if (NULL == m_pTestDlg) { m_pTestDlg = new CTestDialog(this); m_pTestDlg->Create(CTestDialog::IDD, this); } m_pTestDlg->ShowWindow(SW_SHOW);
Naleznete v následujícím článku znalostní báze Knowledge Base:
- Q251059: Postupy: Zadejte název třídy okna vlastní dialogové okno MFC