MFC 之文档/视图/框架

      
要想利用vs开发项目,我们必需要了解MFC的架构以及它们间的相互依赖关系。
      1) 应用程序程序实例: theApp; 
      它其实就是我们所启动的程序实例。是全局的。一旦它释放掉了,则整个程序的生命周期就结束了。我们可以通过全局函数::AfxGetApp();来取得该实例。
      2) MFC程序的主框架: CMainFrm;
      一个MFC应用程序也只有一个主框架。它负责程序中各视图以及各种面板的布局展现工作。我们可以在任意位置通过::AfxGetMainWnd();或::AfxGetApp()->m_pMainWnd;
来获得该主框架对象。
      3) 文档模型: CDocTemplate;
      正常来说,文档模型的职责:负责维护程序中所创建的文档实例。(它同主框架一样,由应用程序theApp维护)。
      在应用程序中,我们可以通过 GetFirstDocTemplatePosition();取得第一个文档模型对象的地址(返回值为:POSITION类型).可以通过GetNextDocTemplate();取得下一个。从而
进行遍历。
      而在文档中,我们可以通过GetDocTemplate();来取得其所属的文档模型对象。
      4) 文档:CDocument:
      其是负责数据维护的工作。其通过结合相应的视图,可将数据展现。一个文档可以维护多个视图。(注意:一个视图只能属于一个文档)。
      在主框架对象中,我们可以通过:GetActiveDocument();取得当前活动的文档对象
      在文档模型对象中,我们通过:GetfirstDocPosition();与GetNextDoc();遍历文档对象
      在文档视图对象中,我们通过:GetDocument();取得所属的文档对象
      5) 视图:CView:
      与文档配置,实现数据的界面展现。
      在主框架类中,我们通过:GetActiveView();获得当前活动视图
      在文档类中,可以通过:GetFirstViewPosition();与GetNextView();遍历出所有的视图。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值