Aug 23, 2008

(回味)指针的应用


   和一个大四毕业的师兄和两个研二师兄一起为西南财大中国金融研究重心鼓捣了一个金融交易模拟系统,收获很多,现在我想慢慢的回味一下它。
   由于用的是VC6.0,没有VS中的托管,所以我想有必要把指针这个让人爱恨交错的东西拿出来说一说。

   获得指针:

1) 在View中获得Doc指针
CYouSDIDoc *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=(CmaimFrame *)AfxGetApp()->m_pMainWnd; CyouView *pView=(CyouView *)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()获得。

No comments:

Powered By Blogger