次の方法で共有


AfxGetMainWnd

更新 : 2007 年 11 月

アプリケーションが OLE サーバーのときは、アプリケーション オブジェクトの m_pMainWnd メンバを直接参照する代わりに、この関数を呼び出してアプリケーションのアクティブなメイン ウィンドウへのポインタを取得します。

CWnd* AFXAPI AfxGetMainWnd( );

戻り値

サーバーがコンテナ内部で埋め込み先編集が有効なオブジェクトを持ち、またコンテナがアクティブになっている場合は、埋め込み先編集が有効なドキュメントを持つフレーム ウィンドウ オブジェクトへのポインタを返します。

コンテナ内部で埋め込み先編集が有効なオブジェクトがない場合、またはアプリケーションが OLE サーバーではない場合は、アプリケーション オブジェクトの m_pMainWnd を返します。

アプリケーションのプライマリ スレッドから AfxGetMainWnd を呼び出すと、上の規則に従ってアプリケーションのメイン ウィンドウが返されます。アプリケーションのセカンダリ スレッドから呼び出すと、呼び出し元スレッドに関連付けられているメイン ウィンドウが返されます。

解説

アプリケーションが OLE サーバーではない場合は、この関数を呼び出しても、アプリケーション オブジェクトの m_pMainWnd メンバを直接参照しても同じです。

使用例

//The following line send a WM_CLOSE message 
//   to the Application's main window. This will cause the
//   Application to exit.
AfxGetMainWnd()->PostMessage(WM_CLOSE, 0, 0);

必要条件

ヘッダー : afxwin.h

参照

概念

MFC マクロとグローバル

参照

CWinThread::m_pMainWnd