我有一个C ++单一文档MFC应用程序,我想知道是否可以从CWinAppEx类调用CChildView中声明的函数。

CChildView的类型为CWnd。

到目前为止,我尝试了:

CChildView* view = (CChildView*)m_pActiveWnd;




CWnd* pWndMain = AfxGetMainWnd();
CChildView* view = (CChildView*) pWndMain;


我在这种类型的体系结构中相对较新,所以希望有人能给我一些建议。

最佳答案

强制转换没有帮助,因为主窗口不是CChildView类,也不是从其继承的。它是一个CFrameWnd,它是在Doc / View体系结构中管理视图的类。

您可以像这样获得指向视图窗口的指针。

 CView* pActiveView = ((CFrameWnd*) AfxGetMainWnd())->GetActiveView();

07-26 06:38