我的应用场合是这样的:
VS10创建的MDI 多文档程序,有2个文档模板,分别对应View1 和View2 两种视图,View1对应工具条ToolBar1 ,View2对应工具条Toolbar2。
我想实现:View1 激活时,显示ToolBar1; View2激活时,显示ToolBar2。
目前,我在CChildFrame中响应 WM____CHILDACTIVATE 消息,代码如下:
void CChildFrame::OnChildActivate()
{
CMDIChildWndEx::OnChildActivate();
// TODO: Add your message handler code here
CView* pView = GetActiveView();
if(pView)
{
CMainFrame* pMainFrame = (CMainFrame*)AfxGetMainWnd();
if(pView->IsKindOf(RUNTIME_CLASS(CWtvView)))
pMainFrame->m_wtvToolBar.ShowPane(TRUE, FALSE, FALSE);
else
pMainFrame->m_wtvToolBar.ShowPane(FALSE, FALSE, FALSE);
}
}
这个代码在不同的文档模板间,或者是同一文档模板的不同视图间切换是没问题的,但是当 用一个文档模板创建2个视图后,关闭1个视图时, 工具条却隐藏了。
请教各位高手, 要实现我想要的现象,该怎么做?