编程小语

使用一个模态对话框CADlg作为另外一个非模态对话框CBDlg的父窗口时,如果在CBDlg中使用MessageBox等模态对话框CCDlg,那么CCDlg的默认父窗口是CBDlg,CCDlg在DoModle的时候,不影响用户对CADlg的操作。这个时候,如果用户关闭了CADlg,同时销毁CBDlg,那么CBDlg就会因为CCDlg正在DoModle无法及时销毁而造成错误。
要解决这个错误,可以把CCDlg的父窗口指定为主框架窗口,比如用AfxMessageBox来代替MessageBox : )

相关链接:12

AfxMessageBox, DoModle, 非模态对话框, messagebox, 模态对话框

你可能感兴趣的:(编程,框架)