温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

多文档获取常用窗口的指针方式

发布时间:2020-09-05 04:36:31 来源:网络 阅读:546 作者:tomy000 栏目:编程语言

利用MFC进行多文档程序开发的时候,灵活运行系统提供的获取指针方法快速定位到某一个窗体,我个人觉得蛮重要的。
1、GetParent(HWND hWnd);获取当前窗口是个子窗口,获取是父窗口的指针,如果是弹出的模态窗口(顶层窗口),获取的是没有WS_CHILD属性的间接父窗口。
MSDN中的解释如下:
If the window is a child window, the return value is a handle to the parent window. If the window is a top-level window, the return value is a handle to the owner window. If the window is a top-level unowned window or if the function fails, the return value is NULL
2、获取应用程序的指针
AfxGetApp();
3、获取主框架的指针
AfxGetMainWnd();
((CMainFrame*)AfxGetApp())->m_pMainWnd;
4、获取菜单的指针
AfxGetMainWnd()->GetMenu();
5、获取工具栏、状态栏的指针
1)主窗口的相应变量
m_wndStatusBar
m_wndToolBar
m_wndRibbonBar //ribbonBar工具栏
2) 函数获取
AfxGetMainWnd()->GetDescendantWindow(AFX_IDW_STATUS_BAR);
AfxGetMainWnd()->GetDescendantWindow(AFX_IDW_TOOLBAR);
6、 文档,指图指针
AfxGetMainWnd()->GetActiveFrame();
AfxGetMainWnd()->GetActiveView(); //如果是多文档,首先获取子框架指针,AfxGetMainWnd()->GetActiveFrame()->GetActiveView();
AfxGetMainWnd()->GetActiveDocument();
7、获取子控件的指针
GetDlgItem(AFX_IDW_PANE_FIRST) //多文档在主框架中获取的是主框架建立的一个伪视图(通过CreateWindow创建的),子框架中获取的才是真正的视图

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI