在VC中提供了生成“以對話框為基礎的應用”的功能,你所需要選擇的是在使用AppWizard的第一步選擇“對話框為基礎的應用”,如圖。
VC會生成包含有應用派生類和對話框派生類的代碼。在應用類的InitInstance()成員函數中可以看到如下的代碼:
BOOL CMy58_s1App::InitInstance()
{
CMy58_s1Dlg dlg;
m_pMainWnd = &dlg;
int nResponse = dlg.DoModal();
if (nResponse == IDOK)
{
// TODO: Place code here to handle when the dialog is
// dismissed with OK
}
else if (nResponse == IDCANCEL)
{
// TODO: Place code here to handle when the dialog is
// dismissed with Cancel
}
return FALSE;
}
這是產生一個有模式對話框並創建它,在對話框返回後通過返回FALSE來直接退出。在設計時通過編輯對話框資源你可以設計好界面,然後通過ClassWizard映射消息來處理客戶的輸入,由於前幾節已經講過本節也就不再重復。
同樣基於對話框的應用也同樣可以使用屬性對話框做為界