如何在调用DoModal()之前在模式对话框上进行额外的初始化; ?
使用VS向导创建整个应用程序。
我有一个主对话框(我在Visual Studio 2008 Professional中选择新的MFC应用程序时自动创建的对话框)。
当我单击此对话框上的按钮时,我想打开另一个对话框并将CString值设置为CEdit控件。
我的代码:
...
void MainDlg::OnClickedButtonX(){
SecondDialogClass Dlg2;
Dlg2.asocVar2Cedit.SetWindowTextW(L"my text");
Dlg2.DoModal();
}
//asocVar2Cedit is the associeted control variable to the
//CEdit control on the second Dialog (Right Click > Add Variable.. in VSC++)
...
此代码在运行时生成winocc中的“Debug Assertion”错误...
任何想法?
提前谢谢。
答案 0 :(得分:1)
将OnInitDialog
(WM_INITDIALOG
)处理程序添加到您的CDialog派生类中并使其初始化。