CDemoView* CDemoApp::GetCurrentView() // // This global function is used to get a pointer to the active view // object. { CMainFrame* pFrame = (CMainFrame*) m_pMainWnd; CMDIChildWnd* pChildWnd = pFrame->MDIGetActive(); if (pChildWnd == NULL){ return NULL; } CDemoView* pView = (CDemoView*)(pChildWnd->GetActiveView()); return pView; }
时间: 2024-04-19 22:25:26 浏览: 257
MFC中MSChart的使用示例
5星 · 资源好评率100%
这段代码是一个全局函数 `CDemoView* CDemoApp::GetCurrentView()`,用于获取当前活动视图(view)对象的指针。
1. 首先,将应用程序的主窗口指针 `m_pMainWnd` 转换为 `CMainFrame*` 类型的指针 `pFrame`。
2. 然后,通过调用 `pFrame->MDIGetActive()` 获取当前活动的 MDI 子窗口指针 `pChildWnd`。
3. 如果 `pChildWnd` 为空,表示当前没有活动的子窗口,直接返回 `NULL`。
4. 否则,通过调用 `pChildWnd->GetActiveView()` 获取当前活动子窗口的活动视图指针,并将其转换为 `CDemoView*` 类型的指针 `pView`。
5. 最后,返回 `pView`,即当前活动视图的指针。
这个函数可以在应用程序中获取当前活动视图对象的指针,以便进行相关操作或访问视图的成员函数和成员变量。
阅读全文