VC获取各类指针

VC获取各类指针

ID:39469612

大小:23.50 KB

页数:4页

时间:2019-07-04

VC获取各类指针_第1页
VC获取各类指针_第2页
VC获取各类指针_第3页
VC获取各类指针_第4页
资源描述:

《VC获取各类指针》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、VC获取各类指针1、获取应用程序指针  CMyApp*pApp=(CMyApp*)AfxGetApp();2、获取主框架指针  CWinApp中的公有成员变量m_pMainWnd就是主框架的指针  CMainFrame*pMainFrame=(CMainFrame*)(AfxGetApp()->m_pMainWnd);  或者  CMainFrame*pMainFrame=(CMainFrame*)AfxGetMainWnd();3、获取菜单指针  CMenu*pMenu=AfxGetMainWnd()->GetMenu();4、获取工具栏

2、、状态栏指针  主框架中可以直接使用m_wndToolBar、m_wndStatusBar  其他:  CToolBar*pToolBar=(CToolBar*)AfxGetMainWnd()->GetDescendantWindow(AFX_IDW_TOOLBAR);  CStatusBar*pStatusBar=CStatusBar*)AfxGetMainWnd()->GetDescendantWindow(AFX_IDW_STATUS_BAR);5、获取控件指针  先用GetDlgItem()再转换,如:  CButton*pButt

3、on=(CButton*)GetDlgItem(IDC_MYBUTTON);6、获取文档、视图指针SDI:CMainFrame*pMainFrame=(CMainFrame*)AfxGetMainWnd();CYourDoc*pDoc=(CYourDoc*)pMainFrame->GetActiveDocument();CYourView*pView=(CYourView*)pMainFrame->GetActiveView();MDI:CMainFrame*pMainFrame=(CMainFrame*)AfxGetMainWnd();C

4、ChildFrame*pChildFrame=(CChildFrame*)pMainFrame->GetActiveFrame();CYourDoc*pDoc=(CYourDoc*)pChildFrame->GetActiveDocument();CYourView*pView=(CYourView*)pChildFrame->GetActiveView();7、文档、视图从视图获取文档指针:CYourDoc*pDoc=GetDocument();从文档获取视图指针:利用成员函数GetFirstViewPosition()和GetNextV

5、iew()遍历virtualPOSITIONGetFirstViewPosition()const;virtualCView*GetNextView(POSITION&rPosition)const;SDI:CYourView*pView;POSITIONpos=GetFirstViewPosition();pView=GetNextView(pos);MDI:定义函数CView*CYourDoc::GetView(CRuntimeClass*pClass){CView*pView;POSITIONpos=GetFirstViewPosit

6、ion();while(pos!=NULL){pView=GetNextView(pos);if(!pView->IsKindOf(pClass))break;}if(!pView->IsKindOf(pClass)){AfxMessageBox("ConntLocatetheView.");returnNULL;}returnpView;}使用如下:CYourView*pView=(CYourView*)GetView(RUNTIME_CLASS(CYourView));8、文档模版、文档从文档获取文档模版指针:CDocTemplate*

7、GetDocTemplate()const;从文档模版获取文档指针:viaualPOSITIONGetFirstDocPosition()const=0;visualCDocument*GetNextDoc(POSITION&rPos)const=0;9、获取分割视图中各个视图的指针主框架中定义:CSplitterWndm_wndSplitter;定义两个View类:CView1、CView2框架类中重载:BOOLCMainFrame::OnCreateClient(LPCREATESTRUCT,CCreateContext*pContex

8、t){VERIFY(m_splitter.CreateStatic(this,2,1));//分割成两行一列VERIFY(m_splitter.CreateView(0,0,RU

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。