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

2021-09-07 22:25:51 字數 2253 閱讀 9226

獲得

獲得cmainframe

獲得cchildframe

獲得cdocument

獲得cview

afxgetmainwnd()

m_pmainwnd

afxgetmainwnd()->mdigetactive()

afxgetmainwnd()->getactiveframe()

sdi:afxgetmainwnd()->getactiveview()->getdocument()

mdi:afxgetmainwnd()->mdigetactive()->getactiveview()->getdocument()

sdi:afxgetmainwnd()->getactiveview()  

mdi:afxgetmainwnd()->mdigetactive()->getactiveview()

cmainframe

mdigetactive()

getactiveframe()

sdi:getactiveview()->getdocument()  

mdi:mdigetactive()->getactiveview()->getdocument()  

sdi:getactiveview()  

mdi:mdigetactive()->getactiveview()

cchildframe

getparentframe()

getactiveview()->getdocument()  

getactiveview()

cdocument

afxgetmainwnd()  

afxgetmainwnd()->mdigetactive()

afxgetmainwnd()->getactiveframe()

position   pos   =   getfirstviewposition();getnextview(pos)  

cview

afxgetmainwnd()  

getparentframe()  

getdocument()

在其他類中

afxgetmainwnd()  

afxgetmainwnd()->mdigetactive()

afxgetmainwnd()->getactiveframe()

sdi:afxgetmainwnd()->getactiveview()->getdocument()

mdi:afxgetmainwnd()->mdigetactive()->getactiveview()->getdocument()

sdi:afxgetmainwnd()->getactiveview()  

mdi:afxgetmainwnd()->mdigetactive()->getactiveview()

理一理mfc的這幾個類的關係,可以很容易明白上面的這些亂七八糟的邏輯。

是應用域,所有的域中的東西都可以通過全域性函式訪問到它。

mainframe

是主框架,也基本可以用全域性函式訪問到。

mainframe

下是若干個

childframe

,childframe

中若干個

view

和document

(可能不成對),

childframe

管理著view

,view

和document

進行互操作。

因此整體框架就出來了,一般除了直接應用的關係都可以通過

mainframe-->active childframe

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

獲得 獲得cmainframe 獲得cchildframe 獲得cdocument 獲得cview 在中 afxgetmainwnd m pmainwnd afxgetmainwnd mdigetactive afxgetmainwnd getactiveframe sdi afxgetmainwn...

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

獲得cmainframe 獲得cchildframe 獲得cdocument 獲得cview afxgetmainwnd m pmainwnd afxgetmainwnd mdigetactive afxgetmainwnd getactiveframe sdi afxgetmainwnd geta...

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

整理總結一下,希望也能幫助一下別人。獲得cmainframe 獲得cchildframe 獲得cdocument 獲得cview afxgetmainwnd m pmainwnd afxgetmainwnd mdigetactive afxgetmainwnd getactiveframe sdi ...