zoukankan      html  css  js  c++  java
  • MFC文档视图中窗口切换 (2012-05-11 18:32:48)

    在文档试图应用程序,有时需要在工作区切换试图,以下就是如何切换试图了
    1.创建要切换的视图类,同时把构造函数,Create函数改变为public
    2.在需要切换试图的动作响应中,加入切换代码,一般是在CMainFrame的菜单响应中加:
    void CMainFrame::On32771()
    {
     // TODO: Add your command handler code here
     CView *pOldActiveView=GetActiveView();//旧视图
     CMyView *pNewActiveView=new CMyView();//要切换的视图
     CCreateContext context;
     context.m_pCurrentDoc=pOldActiveView->GetDocument();//关联到文档.为什么,文档视图,MFC中每个视图要对应一个文档
     //创建视图并且关联到上下文中,IDD_MYVIEW为视图CMyView的ID号
     pNewActiveView->Create(NULL,NULL,WS_CHILD | WS_BORDER,CFrameWnd::rectDefault,this,IDD_MYVIEW,&context);
     pNewActiveView->UpdateData();
     //视图显示/隐藏
     SetActiveView(pNewActiveView);
     pNewActiveView->ShowWindow(SW_SHOW);
     pOldActiveView->ShowWindow(SW_HIDE);
     
     //重新布局主框架
     pNewActiveView->SetDlgCtrlID(AFX_IDW_PANE_FIRST);
     RecalcLayout();
     delete pOldActiveView;
    }
    3.想要切换回去,一样:
     CMyView *pOldActiveView=(CMyView *)GetActiveView();//旧视图
     CChangeViewView *pNewActiveView=new CChangeViewView();//要切换的视图
     CCreateContext context;
     context.m_pCurrentDoc=pOldActiveView->GetDocument();//关联到文档.为什么,文档视图,MFC中每个视图要对应一个文档
     //创建视图并且关联到上下文中,IDD_MYVIEW为视图CMyView的ID号
     pNewActiveView->Create(NULL,NULL,WS_CHILD | WS_BORDER,CFrameWnd::rectDefault,this,IDD_MYVIEW,&context);
     pNewActiveView->UpdateData();
     //视图显示/隐藏
     SetActiveView(pNewActiveView);
     pNewActiveView->ShowWindow(SW_SHOW);
     pOldActiveView->ShowWindow(SW_HIDE);
     
     //重新布局主框架
     pNewActiveView->SetDlgCtrlID(AFX_IDW_PANE_FIRST);
     RecalcLayout();
     delete pOldActiveView;
    
    运行即可实现视图切换
  • 相关阅读:
    php smarty使用..
    深圳面试!
    jQuery 源码分析..
    jQuery 使用技巧!!!
    TOMCAT 访问过程...
    准备使用Delphi调用WCF
    Delphi 中Format的字符串格式化使用说明(转载http://hi.baidu.com/test__123/blog/item/e3bba1599d717a2d2834f092.html)
    电脑启动程序自动启动
    判断输入字符串是否等效Int32位数字的两种方法
    vs2005 快捷键
  • 原文地址:https://www.cnblogs.com/chenzuoyou/p/3214393.html
Copyright © 2011-2022 走看看