关于MFC中基于对话框的打印预览关闭时出错
最近在做这个东西,遇到一点问题,主要是在关闭打印预览界面时出现错误,调试时提示错误File:dbgheap.c Line: 1044。
我也进行了单步调试跟踪,但是知道框架类的析构函数之前调试都没有报错,之后就出现以上的报错提示。不知道哪位大侠有这方面的经验,给个思路也行,我调了好几天还是没有解决。小弟再此先谢过了!!!
前面的打印预览的显示没有问题,就是最后单击打印预览页面右上角的关闭按钮时就报错了,这部分的函数如下:
void CMainFrame::OnClose()
{
CMainFrame* pf=(CMainFrame*)::AfxGetMainWnd();
CWinApp *pApp=AfxGetApp();
pApp->m_pMainWnd=pf->m_pOldWnd; //恢复应用程序原来的主窗口
pf->DestroyWindow();
CFrameWnd::OnClose();
}
void CMainFrame::OnDestroy()
{
CFrameWnd::OnDestroy();
}
我单步跟踪过这两个函数中都没有问题,析构函数也没有问题,析构函数如下。析构函数完之后就报错了
CMainFrame::~CMainFrame()
{
m_pOldWnd->ShowWindow(SW_SHOW);
}