COleClientItem::OnInsertMenus
埋め込み先編集の有効化時に、空のメニューにコンテナー アプリケーションのメニューを挿入するため、フレームワークが呼び出します。
virtual void OnInsertMenus(
CMenu* pMenuShared,
LPOLEMENUGROUPWIDTHS lpMenuWidths
);
パラメーター
pMenuShared
空のメニューへのポインター。lpMenuWidths
ポイントを六つの配列に長どのように多くのメニューをそれぞれ次のメニュー グループのかを示す値。ファイル、編集、コンテナー、オブジェクト、ウィンドウ、ヘルプ。 [ヘルプ]、[コンテナー] および [ウィンドウ] の 3 つのメニュー グループに関しては、コンテナー アプリケーションが設定をする必要があります。この配列では、要素 0、2、4 に対応します。
解説
このメニューは、その後サーバーに渡され、サーバー独自のメニューが挿入されて、コンポジット メニューを形成します。 この関数は、いくつかのコンポジット メニューを構築するため繰り返し呼び出すことができます。
既定の実装では、埋め込み先のコンテナーのメニュー、つまり [ファイル]、[コンテナー]、[ウィンドウ] の各メニュー グループを pMenuShared に挿入します。 CDocTemplate::SetContainerInfo はこのメニュー リソースを設定するのに使われます。 既定の実装では、メニュー リソースによって、lpMenuWidths の要素 0、2、4 に適切な値を設定します。 既定の実装がアプリケーションに適合しないときはこの関数をオーバーライドします。アプリケーションがドキュメント型に関連付けられたリソースのドキュメント テンプレートを使っていない場合などです。 この関数をオーバーライドするときは、OnSetMenu および OnRemoveMenus もオーバーライドする必要があります。 これは、オーバライド可能な高度な関数です。
詳細については、Windows SDK の「IOleInPlaceFrame::InsertMenus」を参照してください。
必要条件
**ヘッダー:**afxole.h