Bagikan melalui


Contoh: Menampilkan Kotak Dialog melalui Perintah Menu

Topik ini berisi prosedur untuk:

  • Tampilkan kotak dialog modal melalui perintah menu.

  • Tampilkan kotak dialog tanpa mode melalui perintah menu.

Kedua prosedur sampel adalah untuk aplikasi MFC dan akan berfungsi dalam aplikasi yang Anda buat dengan MFC Application Wizard.

Prosedur menggunakan nama dan nilai berikut:

Item Nama atau nilai
Aplikasi DisplayDialog
Perintah menu Perintah uji pada menu Tampilan; ID Perintah = ID_VIEW_TEST
Kotak dialog Kotak dialog uji; Kelas = CTestDialog; Header file = TestDialog.h; Variabel = testdlg, ptestdlg
Penangan perintah OnViewTest

Untuk menampilkan kotak dialog modal

  1. Buat perintah menu; lihat Membuat Menu atau Item Menu.

  2. Buat kotak dialog; lihat Memulai Editor Dialog.

  3. Tambahkan kelas untuk kotak dialog Anda. Lihat Menambahkan Kelas untuk informasi selengkapnya.

  4. Di Tampilan Kelas, pilih kelas dokumen (CDisplayDialogDoc). Di jendela Properti , klik tombol Peristiwa . Klik dua kali ID perintah menu (ID_VIEW_TEST). Selanjutnya, klik panah bawah dan pilih <Tambahkan> OnViewTest.

    Jika Anda menambahkan perintah menu ke mainframe aplikasi MDI, pilih kelas aplikasi (CDisplayDialogApp) sebagai gantinya.

  5. Tambahkan pernyataan include berikut ke CDisplayDialogDoc.cpp (atau CDisplayDialogApp.cpp) setelah pernyataan include yang ada:

    #include "TestDialog.h"
    
  6. Tambahkan kode berikut ke untuk OnViewTest mengimplementasikan fungsi:

    CTestDialog testdlg;
    testdlg.DoModal();
    

Untuk menampilkan kotak dialog tanpa mode

  1. Lakukan empat langkah pertama untuk menampilkan kotak dialog modal, kecuali pilih kelas tampilan (CDisplayDialogView) di langkah 4.

  2. Edit DisplayDialogView.h:

    • Deklarasikan kelas kotak dialog sebelum deklarasi kelas pertama:
    class CTestDialog;
    
    • Deklarasikan penunjuk ke kotak dialog setelah bagian Publik atribut:
    CTestDialog* m_pTestDlg;
    
  3. Edit DisplayDialogView.cpp:

    • Tambahkan pernyataan sertakan berikut setelah pernyataan sertakan yang ada:
    #include "TestDialog.h"
    
    • Tambahkan kode berikut ke konstruktor:
    m_pTestDlg = NULL;
    
    • Tambahkan kode berikut ke destruktor:
    delete m_pTestDlg;
    
    • Tambahkan kode berikut ke untuk OnViewTest mengimplementasikan fungsi:
    if (NULL == m_pTestDlg)
    {
       m_pTestDlg = new CTestDialog(this);
       m_pTestDlg->Create(CTestDialog::IDD, this);
    }
    m_pTestDlg->ShowWindow(SW_SHOW);
    

Baca juga

Kotak Dialog
Kotak Dialog Modal dan Modeless