利用MFC向导生成了一个MDI程序,由于程序要求需要多种视图方式显示,需要关联不同菜单 (文档相同),就在C***App类中除了默认的文档模板外,又新添加了几个模板指针,然后在InitInitstance()函数中创建生成类的模板:如下:
声明:
CMultiDocTemplate* m_pTemplate1;
CMultiDocTemplate* m_pTemplate2;
CMultiDocTemplate* m_pTemplate3;
InitInstance()函数中.
m_pDocTemplate1 = new CMultiDocTemplate(
IDR_MAINFRAME,
RUNTIME_CLASS(CTestDoc),
RUNTIME_CLASS(CChildFrame),
RUNTIME_CLASS(CView1));
//AddDocTemplate(m_pDocTemplate);//没有添加到模板列表中去. m_pDocTemplate2 = new CMultiDocTemplate(
IDR_MAINFRAME,
RUNTIME_CLASS(CTestDoc),
RUNTIME_CLASS(CChildFrame),
RUNTIME_CLASS(CView2));
//AddDocTemplate(m_pDocTemplate);
.....//以下相同. 调用的时候,通过调用模板类的成员函数OpenDocument(NULL)函数来创建子框架和对应视图.如:
pTemplate1->OpenDocumentFile(NULL); 问题是:
(1)当点主窗口(CMainFrame类)关闭按钮时候,程序先关闭默认的视图指针.
其他窗口时候什么时间关闭(销毁??)
. (2)在ExitInstance()函数中需要写delete m_pTemplate1;删除模板指针吗?????
声明:
CMultiDocTemplate* m_pTemplate1;
CMultiDocTemplate* m_pTemplate2;
CMultiDocTemplate* m_pTemplate3;
InitInstance()函数中.
m_pDocTemplate1 = new CMultiDocTemplate(
IDR_MAINFRAME,
RUNTIME_CLASS(CTestDoc),
RUNTIME_CLASS(CChildFrame),
RUNTIME_CLASS(CView1));
//AddDocTemplate(m_pDocTemplate);//没有添加到模板列表中去. m_pDocTemplate2 = new CMultiDocTemplate(
IDR_MAINFRAME,
RUNTIME_CLASS(CTestDoc),
RUNTIME_CLASS(CChildFrame),
RUNTIME_CLASS(CView2));
//AddDocTemplate(m_pDocTemplate);
.....//以下相同. 调用的时候,通过调用模板类的成员函数OpenDocument(NULL)函数来创建子框架和对应视图.如:
pTemplate1->OpenDocumentFile(NULL); 问题是:
(1)当点主窗口(CMainFrame类)关闭按钮时候,程序先关闭默认的视图指针.
其他窗口时候什么时间关闭(销毁??)
. (2)在ExitInstance()函数中需要写delete m_pTemplate1;删除模板指针吗?????
2、没有加到文档模板里,就得自己Delete了。