(MFC)多文档视图构架窗口的新建视图问题

九点人 2015-01-19 11:31:58
目的:
新建一个视图,其视图和子框架为新建的,而文档使用当前活动的视图的对应文档来创建:

在COMMAND消息的 自己的菜单项的处理函数中写了如下代码
void CMainFrame::OnNewView()
{
//获取当前活动信息
CChildFrame * pChildFrame=(CChildFrame *)
GetActiveFrame();
Cwday15MFCMultiDocView *pView=(Cwday15MFCMultiDocView *)GetActiveView();
Cwday15MFCMultiDocDoc *pDoc=
(Cwday15MFCMultiDocDoc *)pView->GetDocument();

//获取 文档对应的文档模板
CDocTemplate *pTemplate=pDoc->GetDocTemplate();
//创建了并不显示
CChildFrame *pNewFrame=(CChildFrame*)pTemplate->CreateNewFrame(pDoc,NULL);
//初始化并更新
pTemplate->InitialUpdateFrame(pNewFrame,pDoc,TRUE);
}

总是在这里出错
Cwday15MFCMultiDocDoc *pDoc=
(Cwday15MFCMultiDocDoc *)pView->GetDocument();
函数原型为
Cwday15MFCMultiDocDoc* Cwday15MFCMultiDocView::GetDocument() const // 非调试版本是内联的
{
ASSERT(m_pDocument->IsKindOf(RUNTIME_CLASS(Cwday15MFCMultiDocDoc)));
return (Cwday15MFCMultiDocDoc*)m_pDocument;
}

其中报错在
ASSERT(m_pDocument->IsKindOf(RUNTIME_CLASS(Cwday15MFCMultiDocDoc)));
这一句
说是

不知道什么原因,如何能够解决,求大神帮忙、
...全文
233 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

18,124

社区成员

发帖
与我相关
我的任务
社区描述
Windows客户端使用相关问题交流社区
社区管理员
  • Windows客户端使用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧