MFC中获得各个类的指针句柄ID总结.doc

MFC中获得各个类的指针句柄ID总结.doc

  1. 1、本文档共3页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
MFC中获得各个类的指针句柄ID总结

一般我们使用的框架是VC提供的Wizard生成的 HYPERLINK javascript:; \t _self MFC App Wizard(exe)框架,无论是多文档还是单文档,都存在 HYPERLINK javascript:; \t _self 指针获取和操作问题。 下面这节内容主要是一般的框架,然后再讲多线程中的指针使用。使用到的类需要包含响应的头 HYPERLINK javascript:; \t _self 文件。首先一般获得本类(视,文档,对话框都支持)实例指针 this,用this的目的,主要可以通过类中的函数向其他类或者函数中发指针,以便于在非本类中操作和使用本类中的功能。 这其中的关键在于理解 m_pMainWnd, AfxGetApp(),AfxGetMainWnd() 的意义! 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) 在任何类中获得应用 HYPERLINK javascript:; \t _self 程序类 AfxGetInstanceHandle 得到 HYPERLINK javascript:; \t _self 句柄,AfxGetApp 得到指针 B1.如何在自己的类和“应用程序类”中获得“文档类”的句柄? SDI AfxGetMainWnd() - GetActiveView() - GetDocument() 得到指针 MDI AfxGetMainWnd() - MDIGetActive() - GetActiveView() - GetDocument() 得到指针 B3.如何在“框架类”中获得“文档类”句柄? SDI GetActiveView() - GetDocument() 得到指针,MDI MDIGetActive() - GetActiveView() - GetDocument() 从 CMainFrame 得到指针,GetActiveView() - GetDocument() 从 CChildFrame 得到指针 B4.如何在“视图类”中获得“文档类”句柄? GetDocument() C1.如何在“文档类”中获得“视图类”句柄? GetView(),调用 GetFirstViewPosition 和 GetNextView 函数得到指针。 C2.如何在自己的类和“应用程序类”中获得“视图类”句柄? SDI GetActiveView 得到指针 MDI MDIGetActive() - GetActiveView() 从 CMainFrame 得到指针,GetActiveView 从 CChildFrame 得到指针 最后提醒大家,在提取到各个句柄之后,因为初次提取的都是标准类句柄,所以,在使用时要注意将标准句柄转换成自己的类的句柄。 如: AfxGetApp();//

文档评论(0)

asd522513656 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档