mfc中 一个对话框类如何创建多个对话框?
答案:2 悬赏:0
解决时间 2021-01-12 02:27
- 提问者网友:一抹荒凉废墟
- 2021-01-11 20:39
mfc中 一个对话框类如何创建多个对话框?
最佳答案
- 二级知识专家网友:未来江山和你
- 2021-01-11 20:47
使用资源的对话框,因为使用ID关联,一个资源和一组代码(.H/CPP)是一一对应的关系,没法创建出不同界面的对话框。
如果这些对话框结构简单,返值也不需要大量的代码,可以考虑使用代码动态创建对话框和对话框控件的办法。不过,这个办法同样需要大量的代码,因为每个控件都需要动态创建,还不如多几个类呢。
另外,如果界面样子基本一致,那么使用同一个类是没问题的,只要在模态对话框声明后,传递一个参数过去,在OnInitDialog里面根据参数简单调整即可:
CxxDialog dlg;
dlg.modeSet = 2;//自定义类成员,参数
dlg.DoModal();
//OnInitDialog中
if(modeSet==2)
SetDlgItemText(IDC_BUTTON1,_T("改变参数1"));
else
SetDlgItemText(IDC_BUTTON1,_T("设置参数2"));
如果这些对话框结构简单,返值也不需要大量的代码,可以考虑使用代码动态创建对话框和对话框控件的办法。不过,这个办法同样需要大量的代码,因为每个控件都需要动态创建,还不如多几个类呢。
另外,如果界面样子基本一致,那么使用同一个类是没问题的,只要在模态对话框声明后,传递一个参数过去,在OnInitDialog里面根据参数简单调整即可:
CxxDialog dlg;
dlg.modeSet = 2;//自定义类成员,参数
dlg.DoModal();
//OnInitDialog中
if(modeSet==2)
SetDlgItemText(IDC_BUTTON1,_T("改变参数1"));
else
SetDlgItemText(IDC_BUTTON1,_T("设置参数2"));
全部回答
- 1楼网友:野味小生
- 2021-01-11 22:07
可以啊,没问题
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息!
大家都在看
推荐信息