App Doc View Frame中指针的获取
// App中获取其它三项指针
void CSDIApp::OnApp()
{
    // App
    // Doc
    CDocument *pDoc = ((CFrameWndEx *)m_pMainWnd)->GetActiveDocument();//成员变量CFrameWndEx m_pMainWnd
    // MainFrame
    CFrameWndEx *pMain = (CFrameWndEx *)AfxGetMainWnd();
    // View
    CView *pView = ((CFrameWndEx *)m_pMainWnd)->GetActiveView();
}
// Doc中获取其它三项指针
CSDIDoc::CSDIDoc()//构造函数
{
    // App
    CWinAppEx *pApp = (CWinAppEx *)AfxGetApp();
    // Doc
    // MainFrame
    // Doc的创建先于MainFrame
    // View
    // Doc的创建先于View
}
void CSDIDoc::OnDoc()
{
    // App
    // 同构造函数
    // Doc
    // MainFrame
    CFrameWndEx *pMain = (CFrameWndEx *)AfxGetMainWnd();
    // View
    CView *pView= (CView *)pMain->GetActiveView();
    POSITION pos = GetFirstViewPosition();
    pView = GetNextView(pos);
}
// MainFrame中获取其它三项指针
CMainFrame::CMainFrame()//构造函数
{
    theApp.m_nAppLook = theApp.GetInt(_T("ApplicationLook"), ID_VIEW_APPLOOK_VS_2005);
    // App
    CWinAppEx *pApp = (CWinAppEx *)AfxGetApp();
    // Doc
    // 构造函数里无法得到当前激活的Doc
    // MainFrame
    // View
    // 构造函数里无法得到View指针,因为Main先于View创建。
}
void CMainFrame::OnMain()
{
    // App
    // 同构造函数
    // Doc
    CDocument *pDoc = (CDocument *)GetActiveDocument();
    // MainFrame
    // View
    CView *pView = (CView *)GetActiveView();
}
// View中获取其它三项指针
CSDIView::CSDIView()//构造函数
{
    // App
    CWinAppEx *pApp = (CWinAppEx *)AfxGetApp();
    // Doc
    /* 无法在View的构造函数里得到Doc指针
       GetDocument();实际上是返回m_pDocument
       m_pDocument在OnCreate();里创建        */
    //CDocument *pDoc = GetDocument();
    // MainFrame
    // 构造函数里无法得到MainFrame指针
    // CFrameWndEx *pMain = (CFrameWndEx *)pApp->m_pMainWnd;
    // View
}
void CSDIView::OnView()
{
    // App
    // 同构造函数
    // Doc
    CDocument *pDoc = GetDocument();
    // MainFrame
    CFrameWndEx *pMain = (CFrameWndEx *)AfxGetMainWnd();
    // View
}
// Dlg中获取指针
CDlg::CDlg(CWnd* pParent /*=NULL*/)//构造函数
    : CDialog(CDlg::IDD, pParent)
{
    // App
    CWinAppEx *pApp = (CWinAppEx *)AfxGetApp();
    // Doc
    CDocument *pDoc = ((CFrameWndEx *)AfxGetMainWnd())->GetActiveDocument();
    // MainFrame
    CFrameWndEx *pMain = (CFrameWndEx *)AfxGetMainWnd();
    // View
    CView *pView = ((CFrameWndEx *)AfxGetMainWnd())->GetActiveView();
}
												
											App Doc View Frame中指针的获取的更多相关文章
- (转)MFC中Doc,View,MainFrmae,App各指针的互相获取
		
App是应用域,所有的域中的东西都可以通过全局函数访问到它. MainFrame是主框架,也基本可以用全局函数访问到. MainFrame下是若干个ChildFrame,ChildFrame中若干个V ...
 - MFC中获取App,MainFrame,Doc和View类等指针的方法
		
From: http://hi.baidu.com/wxnxs/item/156a68f5b3b4ed18e3e3bd03 MFC中获取App,MainFrame,Doc和View类等指针的方法 ...
 - ASP.NET 获取不同frame中的控件
		
最近在做网站时遇到一个问题,需要获取不同frame中的控件,请教了一些同事,他们都说是无法取到的, 在网上查找了很多资料,找到了解决方法,现在整理一下当初的解决思路: 1.我需要在mainFrame中 ...
 - OC中 self.view.frame.size.height = 100; 不能通过编译的原因
		
在OC中,当需要修改一个view的尺寸时,通常是通过先将 self.view.fram赋值给一个临时变量,然后修改临时变量,最后将临时变量赋值给 self.view.frame.代码如下: // 1. ...
 - struts2 - View页面中获取Action的成员变量
		
struts2 - View页面中获取Action的成员变量 2016年03月02日 11:04:44 IT男青年 阅读数:1074 View页面中获取Action的成员变量 按照Struts的设 ...
 - android之View坐标系(view获取自身坐标的方法和点击事件中坐标的获取)
		
在做一个view背景特效的时候被坐标的各个获取方法搞晕了,几篇抄来抄去的博客也没弄很清楚. 现在把整个总结一下. 其实只要把下面这张图看明白就没问题了. 涉及到的方法一共有下面几个: view获取自身 ...
 - APP store 上架过程中碰到的那些坑&被拒的各种奇葩原因整理&审核指南中文版
		
苹果官方发布的十大常见被拒原因 1.崩溃次数和Bug数量.苹果要求开发者在将应用提交给App Store之前彻查自己的应用,以尽量避免Bug的存在. 2.链或错误的链接.应用中所有的链接必须是真实且有 ...
 - 仿简书、淘宝等等App的View弹出效果
		
昨天用简书App的时候觉得这个View的弹出效果特别好,而且非常平滑,所以我就尝试写了一个,和简书App上的效果基本一致了: 下面开始讲解: 1.首先我们要知道这个页面有几个View?这个页面其实有四 ...
 - iPhone launch screen,self.view.frame.size
		
在工程文件中找到以下设置 "Launch Screen File"只支持iOS8以上版本,如果用之,则self.view.frame.size返回的结果为正常的当前view尺寸. ...
 
随机推荐
- SVO环境搭建
			
我是装了双系统,实验OS:Ubuntu14.04 Installation: Plain CMake (No ROS) 首先,建立一个工作目录比如:workspace,然后把下面的需要的都在该目录下进 ...
 - JS画几何图形之三【正弦曲线】
			
数学式:y=Asin(ωx+φ)+k 样例:http://www.zhaojz.com.cn/demo/draw7.html 依赖:[点].[直线] JS函数的声明: //画正弦曲线 //dot 原点 ...
 - ArrayList中对象 排序
			
public class Student implements Comparable { private String studentname; public int studentage; publ ...
 - java 分解质因数
			
算法目的:对一个正整数分解质因数 一.算法分析: 1.建立整数列表,保存求到的因数. 2.声明整数i=2,用以递增取模:整数m,用于临时保存n 3.建立while循环,i小于等于整数m时,判断m%i, ...
 - Tomcat安装和目录简介
			
要知道动态的网页必须要有服务器的支撑! 1.知名的java web服务器 Tomcat:Apache组织发布,免费开源的,轻量级 JBoss.WebLogic是商用的,价格较高,但相对于开源的更加稳定 ...
 - 【转】搭建spark环境 单机版
			
本文将介绍Apache Spark 1.6.0在单机的部署,与在集群中部署的步骤基本一致,只是少了一些master和slave文件的配置.直接安装scala与Spark就可以在单机使用,但如果用到hd ...
 - HTMLTestRunner测试报告中文乱码问题解决
			
在学习python selenium自动化测试学习中遇到HTMLTestRunner测试报告出现乱码的问题 Test Group/Test case Count Pass Fail Error Vie ...
 - window64  PHP ffmpeg详解简单上手 音频amr转mp3
			
从网上找了一大堆关于window 64 ffmpeg的信息,都是又长又不关键,让人难消化. 我只要简单的amr转MP3格式而已. 终于搞明白.自己总结了下! 希望能帮助到喜欢言简意赅,一眼上手的同学. ...
 - 我的Python学习笔记(一):==和is
			
Python中对象包含的三个基本要素:id(身份标识),type(数据类型),value(值) ==是用来比较两个对象的value(值)是否相等, is是用来比较两个对象的id(身份标识)是否相等 = ...
 - webapi 异步返回
			
两年前我遇到一个难题: https://q.cnblogs.com/q/78177 WebAPI中使用socket如果在server端回复了再返回值? 现在终于做出一种实现了: [HttpGet] ...