MFC MDI使用自定义模板对话框创建子文档
2014-03-26 14:33
323 查看
假设我的项目名是叫Me的多文档程序。
现在想要通过点击属于MainFrm的按钮,弹出不同的窗体。这些弹出的窗体由自定义的类和dialog控制。
1.定义两个类:Type1和Type2
以下操作Type1和Type2完全一样,所以有的地方就不重复说明了。
2.创建类
最方便的办法是找到项目目录,复制MeView.cpp和MeView.h,另存为副本。用记事本打开,在编辑中找到替换把CMeView全部替换为CType1或者CType2.
然后把文件重命名为Type1.cpp和Type1.h。之后添加到项目中就可以了。
3.创建对话框
然后在资源的dialog中插入对应的对话框。IDD_FORM1和IDD_FORM2。
4.更改Type1.h中对应对话框资源
在类中找到或加入
5.在Me.cpp中添加模板
在全局变量部分添加
在InitInstance中添加
RUNTIME_CLASS确定了对应的操作类。
然后在需要调用的部分,比如mainfrm的某个按钮上函数中
就可以了。
有问题可以联系我。
现在想要通过点击属于MainFrm的按钮,弹出不同的窗体。这些弹出的窗体由自定义的类和dialog控制。
1.定义两个类:Type1和Type2
以下操作Type1和Type2完全一样,所以有的地方就不重复说明了。
2.创建类
最方便的办法是找到项目目录,复制MeView.cpp和MeView.h,另存为副本。用记事本打开,在编辑中找到替换把CMeView全部替换为CType1或者CType2.
然后把文件重命名为Type1.cpp和Type1.h。之后添加到项目中就可以了。
3.创建对话框
然后在资源的dialog中插入对应的对话框。IDD_FORM1和IDD_FORM2。
4.更改Type1.h中对应对话框资源
在类中找到或加入
enum{IDD = IDD_FORM1}
5.在Me.cpp中添加模板
在全局变量部分添加
CMultiDocTemplate* pDocTemplate1; CMultiDocTemplate* pDocTemplate2;
在InitInstance中添加
pDocTemplate1 = new CMultiDocTemplate( IDR_MENUSUTYPE, RUNTIME_CLASS(CMenuSubSetDoc), RUNTIME_CLASS(CChildFrame), // custom MDI child frame RUNTIME_CLASS(CType1)); pDocTemplate2 = new CMultiDocTemplate( IDR_MENUSUTYPE, RUNTIME_CLASS(CMenuSubSetDoc), RUNTIME_CLASS(CChildFrame), // custom MDI child frame RUNTIME_CLASS(CType2));
RUNTIME_CLASS确定了对应的操作类。
然后在需要调用的部分,比如mainfrm的某个按钮上函数中
extern CMultiDocTemplate* pDocTemplate1; CMe *pDoc1; pDoc1 = (CMe*)pDocTemplate1->OpenDocumentFile(NULL);
就可以了。
有问题可以联系我。
相关文章推荐
- Visual c++中不使用对话框模板资源创建对话框应用
- MFC 单文档模板创建CEditView CSingleDocTemplate 14.5.5
- VS2013/MFC编程入门之五(对话框:创建对话框模板和修改对话框属性)
- MFC使用MDI多文档遍历标签页
- [MFC]动态对象创建、文档模板加载.rc资源
- Visual c++中不使用对话框模板资源创建对话框应用
- MFC不使用对话框资源模版创建对话框
- 【Symfony2官方文档翻译】Book07:创建和使用模板
- VS2010/MFC编程入门之五(对话框:创建对话框模板和修改对话框属性)
- VC/MFC如何使用CreateEx()创建自己的对话框资源
- 不使用MFC创建对话框---简单的计算器
- 使用 AlertDialog 创建列表对话框及自定义对话框
- 使用Orca在Visual Studio安装项目中创建自定义对话框
- VS2010/MFC编程入门之六(对话框:创建对话框模板和修改对话框属性)
- MFC中不同对话框间使用SendMessage发送自定义消息的具体实现
- Visual c++例子,可不使用常规的对话框资源模板的情况下,动态创建对话框的方法
- 使用脚本创建客户虚拟机模板 (文档 ID 2089028.1)
- (转载)VS2010/MFC编程入门之六(对话框:创建对话框模板和修改对话框属性)
- 如何在MFC中创建和使用对话框
- MFC 的MDI创建空文档调用过程