IOleInPlaceActiveObjectImpl クラス
このクラスは、インプレース コントロールとそのコンテナー間の通信を支援するメソッドを提供します。
重要
このクラスとそのメンバーは、Windows ランタイムで実行するアプリケーションで使用することはできません。
構文
template<class T>
class IOleInPlaceActiveObjectImpl
パラメーター
T
IOleInPlaceActiveObjectImpl
から派生したクラス。
メンバー
パブリック メソッド
名前 | 説明 |
---|---|
IOleInPlaceActiveObjectImpl::ContextSensitiveHelp | 状況依存のヘルプが有効になります。 ATL 実装によって E_NOTIMPL が返されます。 |
IOleInPlaceActiveObjectImpl::EnableModeless | モードレス ダイアログ ボックスが有効になります。 ATL 実装では S_OK が返されます。 |
IOleInPlaceActiveObjectImpl::GetWindow | ウィンドウ ハンドルを取得します。 |
IOleInPlaceActiveObjectImpl::OnDocWindowActivate | コンテナーのドキュメント ウィンドウがアクティブ化または非アクティブ化されたときに、コントロールに通知します。 ATL 実装では S_OK が返されます。 |
IOleInPlaceActiveObjectImpl::OnFrameWindowActivate | コンテナーの最上位レベルのフレーム ウィンドウがアクティブ化または非アクティブ化されたときに、コントロールに通知します。 ATL 実装では次が返されます |
IOleInPlaceActiveObjectImpl::ResizeBorder | 境界線のサイズを変更する必要があることをコントロールに通知します。 ATL 実装では S_OK が返されます。 |
IOleInPlaceActiveObjectImpl::TranslateAccelerator | コンテナーからのメニュー アクセラレータキー メッセージを処理します。 ATL 実装によって E_NOTIMPL が返されます。 |
解説
IOleInPlaceActiveObject インターフェイスは、インプレース コントロールとそのコンテナー間の通信を支援します。たとえば、コントロールとコンテナーのアクティブな状態を伝えたり、サイズ変更の必要があることをコントロールに通知したりします。 クラス IOleInPlaceActiveObjectImpl
により、既定の IOleInPlaceActiveObject
の実装が提供され、デバッグ ビルドでダンプ デバイスに情報を送信することによって IUnknown
がサポートされます。
関連記事 ATL チュートリアル、 ATL プロジェクトの作成
継承階層
IOleInPlaceActiveObject
IOleInPlaceActiveObjectImpl
要件
ヘッダー: atlctl.h
IOleInPlaceActiveObjectImpl::ContextSensitiveHelp
状況依存のヘルプが有効になります。
HRESULT ContextSensitiveHelp(BOOL fEnterMode);
戻り値
E_NOTIMPL を返します。
解説
Windows SDK の IOleWindow::ContextSensitiveHelp に関する記事を参照してください。
IOleInPlaceActiveObjectImpl::EnableModeless
モードレス ダイアログ ボックスが有効になります。
HRESULT EnableModeless(BOOL fEnable);
戻り値
S_OK を返します。
解説
Windows SDK の IOleInPlaceActiveObject::EnableModeless に関する記事を参照してください。
IOleInPlaceActiveObjectImpl::GetWindow
コンテナーがこの関数を呼び出して、コントロールのウィンドウ ハンドルを取得します。
HRESULT GetWindow(HWND* phwnd);
解説
一部のコンテナーは、現在ウィンドウ化されている場合でも、ウィンドウなしだったコントロールでは機能しません。 ATL の実装では、CComControl::m_bWasOnceWindowless
データ メンバーが TRUE の場合、関数は E_FAIL を返します。 それ以外の、*phwnd が NULL でない場合、GetWindow
は phwnd をコントロール クラスのデータ メンバー m_hWnd
に割り当て、S_OK を返します。
Windows SDK の IOleWindow::GetWindow に関する記事を参照してください。
IOleInPlaceActiveObjectImpl::OnDocWindowActivate
コンテナーのドキュメント ウィンドウがアクティブ化または非アクティブ化されたときに、コントロールに通知します。
HRESULT OnDocWindowActivate(BOOL fActivate);
戻り値
S_OK を返します。
解説
Windows SDK の IOleInPlaceActiveObject::OnDocWindowActivate に関する記事を参照してください。
IOleInPlaceActiveObjectImpl::OnFrameWindowActivate
コンテナーの最上位レベルのフレーム ウィンドウがアクティブ化または非アクティブ化されたときに、コントロールに通知します。
HRESULT OnFrameWindowActivate(BOOL fActivate);
戻り値
S_OK を返します。
解説
Windows SDK の IOleInPlaceActiveObject::OnFrameWindowActivate に関する記事を参照してください。
IOleInPlaceActiveObjectImpl::ResizeBorder
境界線のサイズを変更する必要があることをコントロールに通知します。
HRESULT ResizeBorder(
LPRECT prcBorder,
IOleInPlaceUIWindow* pUIWindow,
BOOL fFrameWindow);
戻り値
S_OK を返します。
解説
Windows SDK の IOleInPlaceActiveObject::ResizeBorder に関する記事を参照してください。
IOleInPlaceActiveObjectImpl::TranslateAccelerator
コンテナーからのメニュー アクセラレータキー メッセージを処理します。
HRESULT TranslateAccelerator(LPMSG lpmsg);
戻り値
このメソッドは、次の戻り値をサポートします。
メッセージが正常に変換された場合は S_OK。
メッセージが変換されなかった場合は S_FALSE。
解説
Windows SDK の IOleInPlaceActiveObject::TranslateAccelerator に関する記事を参照してください。