次の方法で共有


IOleInPlaceActiveObject::OnDocWindowActivate メソッド (oleidl.h)

コンテナーのドキュメント ウィンドウがアクティブまたは非アクティブになったときに、アクティブなインプレース オブジェクトに通知します。

構文

HRESULT OnDocWindowActivate(
  [in] BOOL fActivate
);

パラメーター

[in] fActivate

MDI 子ドキュメント ウィンドウの状態。 このパラメーターが TRUE の場合、ウィンドウはアクティブ化の動作になります。 FALSE の場合は、非アクティブ化の動作になります。

戻り値

このメソッドは、成功したS_OKを返します。

注釈

呼び出し元へのメモ

MDI 子ドキュメント ウィンドウがアクティブまたは非アクティブになり、オブジェクトが現在ドキュメントのアクティブなオブジェクトである場合は、 IOleInPlaceActiveObject::OnDocWindowActivate を呼び出します。

実装者へのメモ

このメソッドには、オブジェクトのアクティブ化中にフレーム レベルのツールをインストールするコードを含める必要があります。 これらのツールには、共有複合メニューやオプションのツール バーとフレームの装飾が含まれます。 その後、焦点を当てる必要があります。 非アクティブ化すると、オブジェクトはフレーム レベルのツールを削除する必要があります。 pborderwidths を NULL に設定して IOleInPlaceUIWindow::SetBorderSpace を呼び出さない場合は、罫線領域を再ネゴシエーションする必要がなくなります。

IOleInPlaceActiveObject::OnDocWindowActivate の実行中は、PeekMessage 関数や GetMessage 関数、またはダイアログ ボックスを呼び出さないでください。 これを行うと、システムがデッドロックする可能性があります。 IOleInPlaceActiveObject::OnDocWindowActivate 内から呼び出すことができる OLE インターフェイスのメソッドと関数には、さらに制限があります。

要件

要件
サポートされている最小のクライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー oleidl.h

こちらもご覧ください

GetMessage

IOleInPlaceActiveObject

PeekMessage