MFC中獲取各種指針的方式
在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()