0

C ++で単一ドキュメントのMFCアプリケーションを使用していますが、CWinAppExクラスからCChildViewで宣言された関数を呼び出すことができるかどうか疑問に思っています。

CChildViewのタイプはCWndです。

これまでに試しました:

CChildView* view = (CChildView*)m_pActiveWnd;

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

私はこのタイプのアーキテクチャに比較的慣れていないので、誰かが私にアドバイスをくれることを願っています。

4

1 に答える 1

1

メイン ウィンドウは CChildView クラスではなく、CChildView クラスから継承されていないため、キャストは役に立ちません。Doc/View Architecture でビューを管理するクラスである CFrameWnd です。

このようなビュー ウィンドウへのポインターを取得できます。

 CView* pActiveView = ((CFrameWnd*) AfxGetMainWnd())->GetActiveView();
于 2012-09-25T01:02:29.237 に答える