次の方法で共有


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

境界線領域のサイズを変更する必要があるオブジェクトに警告します。

構文

HRESULT ResizeBorder(
  [in] LPCRECT             prcBorder,
  [in] IOleInPlaceUIWindow *pUIWindow,
  [in] BOOL                fFrameWindow
);

パラメーター

[in] prcBorder

オブジェクトがツールの境界線領域を要求できる新しい外側の四角形を含む RECT 構造体へのポインター。

[in] pUIWindow

罫線が変更されたフレームまたはドキュメント ウィンドウ オブジェクトの IOleInPlaceUIWindow インターフェイス ポインターへのポインター。

[in] fFrameWindow

フレーム ウィンドウ オブジェクトが IOleInPlaceActiveObject::ResizeBorder を呼び出している場合、このパラメーターは TRUE です。それ以外の場合は FALSE です

戻り値

このメソッドは、成功したS_OKを返します。 その他の可能な戻り値は次のとおりです。

リターン コード 説明
E_INVALIDARG
指定されたパラメーター値が無効です。
E_OUTOFMEMORY
操作に使用できるメモリが不足しています。
E_UNEXPECTED
予期しないエラーが発生しました。

注釈

呼び出し元へのメモ

IOleInPlaceActiveObject::ResizeBorder は、オブジェクトに割り当てられた境界線領域を変更する必要がある場合に、最上位コンテナーのドキュメント またはフレーム ウィンドウ オブジェクトによって呼び出されます。 アクティブなインプレース オブジェクトには、変更されたウィンドウ (フレーム レベルまたはドキュメント レベルのウィンドウ) が通知されないため、 IOleInPlaceActiveObject::ResizeBorder は、ウィンドウの IOleInPlaceUIWindow インターフェイスへのポインターを渡す必要があります。

実装者へのメモ

ほとんどの場合、サイズ変更では、オブジェクトのフレームの装飾を拡大、縮小、またはスケーリングするだけで済みます。 ただし、より複雑な装飾の場合は、 IOleInPlaceUIWindow::SetBorderSpaceIOleInPlaceUIWindow::SetBorderSpace の呼び出しを使用して、境界空間の再ネゴシエーションが必要になる場合があります。
メモIOleInPlaceActiveObject::ResizeBorder の実行中は、PeekMessage 関数や GetMessage 関数、またはダイアログ ボックスを呼び出さないでください。 これを行うと、システムがデッドロックする可能性があります。 IOleInPlaceActiveObject::ResizeBorder 内から呼び出すことができる OLE インターフェイスのメソッドと関数には、さらに制限があります。
 

要件

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

こちらもご覧ください

GetMessage

IOleInPlaceActiveObject

IOleInPlaceUIWindow::GetBorder

PeekMessage