是单文档、多视图
如果在App::InitInstance中注册,在程序启动时就会出现选择哪个视图的提示窗口。
我希望是在切换到该视图时显示有关工具栏,而切换到其它视图时隐藏这些工具栏。

解决方案 »

  1.   

    先得到这些工具栏的句柄,然后再用ShowWindow()隐藏或显示
      

  2.   

    很容易,在View的OnActivateView()中处理,调用ParentFrame中的函数来显示或关闭工具条就行了
      

  3.   

    调用ParentFrame中的函数来显示或关闭工具条就行了
    怎样调用,调用哪个(哪些)
      

  4.   

    我知道了。Semigod的意思是说在你的MainFrame里实现一个public的成员函数,比方说void ShowBar(int i); 然后呢,当你的View激活的时候会调用OnActivateView(),在这里面呢,你可以调用MainFrame的ShowBar().Semigod,你的名字很有个性,我说得对么?
      

  5.   

    xlander(阿富) 理解得正确,谢你的夸奖。
    大概代码如下:
    void CLeftView::OnActivateView(BOOL bActivate, CView* pActivateView, CView* pDeactiveView)
    {
    CMainFrame * pMainFrame = (CMainFrame *)GetParentFrame();
             if (pMainFrame)
         pMainFrame->MyShowBar(bActivate);
    CView::OnActivateView(bActivate, pActivateView, pDeactiveView);
    }CMainFrame::MyShowBar(BOOL bShow)
    {
        ShowControlBar(&m_wndToolBar, bShow, TRUE);
    }