MFC单击按钮弹出模态对话框的相关问题

主对话框本身是一个模态对话框,有一个按钮。
从资源视图插入dialog,然后在类向导中添加类rrrDlg1

在主对话框的按钮点击事件中添加如下代码:

 void CrrrDlg::OnBnClickedOk(){
            //TODO: 在此添加控件通知处理程序代码
            rrrDlg1 dlg1;
                    INT_PTR n1Response = dlg1.DoModal();

            if (n1Response == IDOK){
                    }
            else if (n1Response == IDCANCEL){
                    }
                    CDialogEx::OnOK();
}

其中DoModal()有波浪线提示错误:类rrrDlg1没有成员DoModal

问题来了:怎样建立的对话框是模态对话框,怎样又是非模态的?在整个建立的流程中并没有相关选项,只在实例化之后告诉我没有DoModal这个方法,太郁闷了!!

2个回答

rrrDlg1需要从CDialog继承才行。

u014341580
SomeAody 另外,一定要从CDialog继承吗?CDialogEx可以吗?
接近 5 年之前 回复
u014341580
SomeAody “从CDialog继承”的意思是不是“把rrrDlg1的基类设置为CDialog”??父类就是基类吗??
接近 5 年之前 回复

rrrDlg1类是不是对话框的类。才有DoModal

DoModal方式创建的就是模态对话框。Create的方式创建对话框就是非模态的

oyljerry
oyljerry 回复u014341580: 直接查看一下CDialigEx的定义。
接近 5 年之前 回复
oyljerry
oyljerry 回复u014341580: 直接查看一下CDialigEx的定义。
接近 5 年之前 回复
oyljerry
oyljerry 回复u014341580: 直接查看一下CDialigEx的定义。
接近 5 年之前 回复
oyljerry
oyljerry 回复u014341580: 直接查看一下CDialigEx的定义。
接近 5 年之前 回复
oyljerry
oyljerry 回复u014341580: 直接查看一下CDialigEx的定义。
接近 5 年之前 回复
u014341580
SomeAody rrrDlg1类的基类是CDiologEx,我添加类的时候基类没有更多选择了,就选了它CDiologEx,这应该是对话框的类吧,应该有DoModal方法吧?可是就是像上面说的提示错误
接近 5 年之前 回复
u014341580
SomeAody rrrDlg1类的基类是CDiologEx,我添加类的时候基类没有更多选择了,就选了它CDiologEx,这应该是对话框的类吧,应该有DoModal方法吧?可是就是像上面说的提示错误
接近 5 年之前 回复
u014341580
SomeAody rrrDlg1类的基类是CDiologEx,我添加类的时候基类没有更多选择了,就选了它CDiologEx,这应该是对话框的类吧,应该有DoModal方法吧?可是就是像上面说的提示错误
接近 5 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问