Doc--View 之间相互访问

1)   在View中获得Doc指针    
   
  CYourSDIDoc   *pDoc=GetDocument();一个视只能有一个文档。  
   
  2)   在App中获得MainFrame指针  
  CWinApp   中的   m_pMainWnd变量就是MainFrame的指针  
  也可以:    
   
  CMainFrame   *pMain   =(CMainFrame   *)AfxGetMainWnd();  
   
  3)   在View中获得MainFrame指针    
   
  CMainFrame   *pMain=(CmaimFrame   *)AfxGetApp()->m_pMainWnd;  
   
  4)   获得View(已建立)指针    
   
  CMainFrame   *pMain=(CMainFrame  *)AfxGetApp()->m_pMainWnd;  
   
  CYourView   *pView=(CYourView  *)pMain->GetActiveView();  
   
  5)   获得当前文档指针    
   
  CDocument   * pCurrentDoc   =(CFrameWnd   *)m_pMainWnd->GetActiveDocument();  
   
  6)   获得状态栏与工具栏指针    
   
  CStatusBar   *   pStatusBar=(CStatusBar   *)AfxGetMainWnd()->GetDescendantWindow(AFX_IDW_STATUS_BAR);  
   
  CToolBar   *   pToolBar=(CtoolBar   *)AfxGetMainWnd()->GetDescendantWindow(AFX_IDW_TOOLBAR);  
   
  7)   如果框架中加入工具栏和状态栏变量还可以这样    
   
  (CMainFrame   *)GetParent()->m_wndToolBar;  
   
  (CMainFrame   *)GetParent()->m_wndStatusBar;  
   
  8)   在Mainframe获得菜单指针    
   
  CMenu   *pMenu=m_pMainWnd->GetMenu();  
   
  9)   在任何类中获得 应用 程序类  
  用MFC全局函数AfxGetApp()获得。

你可能感兴趣的:(Doc--View 之间相互访问)