• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            elva

            VC MFC SDI/MDI框架各部分指針獲取方式


                

            獲得CWinApp

            獲得CMainFrame

            獲得CChildFrame

            獲得CDocument

            獲得CView

            在CWinApp中

            AfxGetMainWnd()

            m_pMainWnd

            AfxGetMainWnd()->MDIGetActive()

            AfxGetMainWnd()->GetActiveFrame()

            SDI:AfxGetMainWnd()->GetActiveView()->GetDocument()

            MDI:AfxGetMainWnd()->MDIGetActive()->GetActiveView()->GetDocument()

            SDI:AfxGetMainWnd()->GetActiveView()  
            MDI:AfxGetMainWnd()->MDIGetActive()->GetActiveView()
            在CMainFrame中

            AfxGetApp()

            theApp

            MDIGetActive()

            GetActiveFrame()

            SDI:GetActiveView()->GetDocument()  
            MDI:MDIGetActive()->GetActiveView()->GetDocument()  
            SDI:GetActiveView()  
            MDI:MDIGetActive()->GetActiveView()
            在CChildFrame中

            AfxGetApp()

            theApp

            GetParentFrame()

            GetActiveView()->GetDocument()  GetActiveView()
            在CDocument中

            AfxGetApp()

            theApp

            AfxGetMainWnd()  

            AfxGetMainWnd()->MDIGetActive()

            AfxGetMainWnd()->GetActiveFrame()

            POSITION   pos   =   GetFirstViewPosition();GetNextView(pos)  
            在CView中

            AfxGetApp()

            theApp

            AfxGetMainWnd()  GetParentFrame()  GetDocument()
            在其他類中

            AfxGetApp()

            AfxGetMainWnd()  

            AfxGetMainWnd()->MDIGetActive()

            AfxGetMainWnd()->GetActiveFrame()

            SDI:AfxGetMainWnd()->GetActiveView()->GetDocument()

            MDI:AfxGetMainWnd()->MDIGetActive()->GetActiveView()->GetDocument()

            SDI:AfxGetMainWnd()->GetActiveView()  
            MDI:AfxGetMainWnd()->MDIGetActive()->GetActiveView()
            理一理MFC的這幾個類的關系,可以很容易明白上面的這些亂七八糟的邏輯。
            App是應用域,所有的域中的東西都可以通過全局函數訪問到它。
            MainFrame是主框架,也基本可以用全局函數訪問到。
            MainFrame下是若干個ChildFrame,ChildFrame中若干個View和Document(可能不成對),ChildFrame管理著View,View和Document進行互操作。
            因此整體框架就出來了,一般除了直接應用的關系都可以通過MainFrame-->Active ChildFrame-->Active View-->Document這條線進行訪問,這應該叫什么來自?萬能方法吧^_^。

            posted on 2009-04-07 10:51 葉子 閱讀(2444) 評論(1)  編輯 收藏 引用 所屬分類: C\C++

            Feedback

            # re: VC MFC SDI/MDI框架各部分指針獲取方式 2009-06-29 10:06 亂78糟

            總結的可以,頂一下  回復  更多評論   

            欧美精品一区二区精品久久| 青青青国产成人久久111网站| 久久99久久无码毛片一区二区| 亚洲国产成人久久综合一| 久久精品三级视频| 久久亚洲私人国产精品| 久久综合九色综合欧美狠狠| 国产精品久久久久久五月尺| 久久夜色精品国产网站| 九九久久精品无码专区| 人妻无码αv中文字幕久久琪琪布 人妻无码久久一区二区三区免费 人妻无码中文久久久久专区 | 久久国产成人精品麻豆| 日韩中文久久| 免费观看久久精彩视频| 无码人妻久久久一区二区三区| 久久国产香蕉视频| 无码人妻久久久一区二区三区| 久久精品国产亚洲Aⅴ香蕉 | 精品久久久久久中文字幕人妻最新| 久久久久久久综合综合狠狠| 国产精品一区二区久久精品| 亚洲国产精品无码久久一区二区| 久久国产精品免费一区| 久久久久久久综合日本亚洲| 精品综合久久久久久888蜜芽| 久久人人爽人人爽人人片AV东京热 | 久久精品国产2020| 亚洲国产综合久久天堂| 久久久久国产视频电影| 久久香蕉一级毛片| 精品久久一区二区| 久久香蕉国产线看观看乱码| 麻豆精品久久久一区二区| 久久亚洲国产午夜精品理论片| 精品无码久久久久久尤物| 久久亚洲AV成人无码国产| 亚洲人成精品久久久久| 婷婷综合久久中文字幕蜜桃三电影 | 久久狠狠爱亚洲综合影院| 亚洲欧美日韩久久精品| 午夜精品久久久内射近拍高清|