省略可能なメソッド

OLE コンポーネントは、インターフェイス内のすべてのメソッドのすべてのセマンティクスを実装せずにインターフェイスを実装できます。代わりに、必要に応じてE_NOTIMPLまたはS_OKを返します。 次の表では、ActiveX コントロール コンテナーが実装する必要がないメソッドについて説明します (つまり、コントロール コンテナーはE_NOTIMPLを返すことができます)。

次の表では、省略可能なメソッドについて説明します。メソッドはまだ存在する必要がありますが、実際のセマンティクスを実装する代わりに単にE_NOTIMPLを返すことができます。 以下に記載されていない必須インターフェイスのメソッドは必須と見なされる必要があり、E_NOTIMPLを返さない可能性があることに注意してください。

IOleClientSite

メソッド 説明
SaveObject
永続化を正常にサポートするために必要です。
GetMoniker
コンテナーが独自のフォームまたはドキュメント内のコントロールへのリンクをサポートしている場合にのみ必要です。

IOleInPlaceSite

メソッド 説明
ContextSensitiveHelp
オプション
スクロール
アクションなしでS_FALSEを返す場合があります。
DiscardUndoState
アクションなしでS_OKを返すことができます。
DeactivateAndUndo
非アクティブ化は必須です。[元に戻す] は省略可能です。

IOleControlSite

メソッド 説明
GetExtendedControl
拡張コントロールをサポートするコンテナーに必要です。
ShowPropertyFrame
コントロールによって提供されるプロパティに加えて、拡張コントロール プロパティを処理するために、独自のプロパティ ページを含めるコンテナーに必要です。
TranslateAccelerator
アクションなしでS_FALSEを返す場合があります。
LockInPlaceActive
オプション

IDispatch (Ambient プロパティ)

メソッド 説明
GetTypeInfoCount
標準以外のアンビエント プロパティをサポートするコンテナーに必要です。
GetTypeInfo
標準以外のアンビエント プロパティをサポートするコンテナーに必要です。
GetIDsOfNames
標準以外のアンビエント プロパティをサポートするコンテナーに必要です。

IDispatch (イベント シンク)

メソッド 説明
GetTypeInfoCount
コントロールは独自の型情報を認識するため、これを呼び出す必要はありません。
GetTypeInfo
コントロールは独自の型情報を認識するため、これを呼び出す必要はありません。
GetIDsOfNames
コントロールは独自の型情報を認識するため、これを呼び出す必要はありません。

IOleInPlaceFrame

メソッド 説明
ContextSensitiveHelp
GetBorder
ツール バー UI を使用するコンテナーに必要 (省略可能)
RequestBorderSpace
ツール バー UI を使用するコンテナーに必要 (省略可能)
SetBorderSpace
ツール バー UI を使用するコンテナーに必要 (省略可能)
InsertMenus
メニュー UI を持つコンテナーに必要 (省略可能)
SetMenu
メニュー UI を持つコンテナーに必要 (省略可能)
RemoveMenus
メニュー UI を持つコンテナーに必要 (省略可能)
SetStatusText
状態行があるコンテナーに対してのみ必要です
EnableModeless
オプション
TranslateAccelerator
オプション

IOleContainer

メソッド 説明
ParseDisplayName
これはモニカー バインドに必要であるため、コンテナー内のコントロールまたはその他の埋め込みへのリンクがサポートされている場合にのみ。
LockContainer
ParseDisplayName の場合
EnumObjects
IEnumUnknown を持つ列挙子を介してすべての ActiveX コントロールを返しますが、必ずしもすべてのオブジェクトを返します (すべてのオブジェクトが ActiveX コントロールであるという保証はないため、通常の Windows コントロールである場合もあります)。

Containers