(以下主對話方塊類為 maindlg)
一、建立模態對話方塊:
1.在資源檢視裡插入dialog,對新建的對話方塊進行更改屬性新增需要的控制項等操作。
2.在新建的對話方塊中右鍵新增類,新增新的對話方塊類cmodeldlg。
3.在maindlg.h中包含modeldlg的標頭檔案:#include "cmodeldlg.h"。
4.使用如下方式開啟模態對話方塊:
cmodeldlg dlg; // 定義對話方塊類cmodeldlg的物件dlg
int_ptr nresponse = dlg.domodal(); // 彈出對話方塊dlg,並將domodal函式的返回值)賦值給nresponse
if (nresponse == idok) // 判斷返回值是否為ok
else if (nresponse == idcancel) // 判斷返回值是否為cancel
二、建立非模態對話方塊:
1.在資源檢視裡插入dialog,對新建的對話方塊進行更改屬性新增需要的控制項等操作。
2.在新建的對話方塊中右鍵新增類,新增新的對話方塊類cmodelessdlg。
3.在maindlg.h中包含cmodelessdlg的標頭檔案:#include "cmodelessdlg.h"。
4.在maindlg.h中為cmaindlg類新增private成員變數cmodelessdlg *m_pmodelessdlg;
6.在maindlg類的建構函式中初始化成員變數m_pmodelessdlg=null;
6.使用如下方式開啟模態對話方塊:
if (null == m_pmodelessdlg)// 如果指標變數m_pmodelessdlg的值為null,則對話方塊還未建立,需要動態建立
// 顯示非模態對話方塊
m_pmodelessdlg->showwindow(sw_show);
7.在cmaindlg類的解析函式中按如下方式來銷毀視窗釋放視窗指標
1)在cmaindlg.h中新增析構函式的宣告~cmaindlg();
2)在cmaindlg.cpp中定義析構函式:
cmaindlg::~cmaindlg()
}
MFC筆記 建立模態對話方塊和非模態對話方塊
建立模態對話方塊 新建乙個對話方塊,對話方塊生成類。在要載入對話方塊的類前新增標頭檔案 生成模態對話方塊的地方 ctest ctrst ctest.domodal 建立非模態對話方塊 新建乙個對話方塊,生成類。要載入的對話方塊類新增成員變數 csweepfreq m sweepferq 類名,變數名...
MFC模態與非模態對話方塊
1.1模態對話方塊 model dialog box 當模態對話方塊顯示時,程式會暫停執行,直到關閉這個模態對話方塊之後,才能執行程式中的其他任務。1.2非模態對話方塊 modeless dialog box 當非模態對話方塊顯示時,執行轉而執行程式中的其他任務,而不用關閉這個對話方塊。2.1模態對...
MFC模態與非模態對話方塊
1.1模態對話方塊 model dialog box 當模態對話方塊顯示時,程式會暫停執行,直到關閉這個模態對話方塊之後,才能執行程式中的其他任務。1.2非模態對話方塊 modeless dialog box 當非模態對話方塊顯示時,執行轉而執行程式中的其他任務,而不用關閉這個對話方塊。2.1模態對...