Sdílet prostřednictvím


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

  1. Vytvořit příkaz nabídky; Viz vytváření nabídek nebo položky nabídky.

  2. Vytvořit dialogové okno; Viz spuštění editoru dialogů.

  3. Přidáte třídy do dialogového okna.Viz Přidání třídy Další informace.

  4. 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).

  5. Přidat příkaz CDisplayDialogDoc.cpp (nebo CDisplayDialogApp.cpp) zahrnují následující po stávající příkazy patří:

    #include "TestDialog.h"
    
  6. Přidejte následující kód na OnViewTest implementovat funkci:

    CTestDialog testdlg;
    testdlg.DoModal();  
    

Zobrazit nemodální okno

  1. To první čtyři kroky modální dialogové okno, s výjimkou zobrazení třídy (CDisplayDialogView) vyberte v kroku 4.

  2. 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;
      
  3. 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

Viz také

Koncepty

Dialogové okno

Modální dialogová nemodální a