CMenu::InsertMenu

BOOL [挿入] メニュー ( UINT nPosition, UINT nFlags, UINT nIDNewItem = 0、 LPCTSTR lpszNewItem = NULL );

BOOL [挿入] メニュー ( UINT nPosition, UINT nFlags, UINT nIDNewItem, const CBitmappBmp );

戻り値

関数が成功したそうでなければ 0。

パラメーター

nPosition

前に、新しいメニュー項目を挿入するのには、メニュー項目を指定します。NFlagsパラメーターは、次の方法でのnPositionの解釈を使用できます。:

nFlags NPosition の解釈
MF_BYCOMMAND 既存のメニュー項目のコマンド ID をパラメーターに指定を指定します。MF_BYCOMMANDMF_BYPOSITIONのどちらに設定されている場合、これがデフォルトです。
MF_BYPOSITION 既存のメニュー項目の位置をパラメーターに指定を指定します。最初の項目位置は 0 です。NPositionが-1 の場合は、新しいメニュー項目がメニューの末尾に追加されます。

nFlags

NPositionの解釈方法を指定し、それをメニューに追加すると、新しいメニュー項目の状態についての情報を指定します。設定できるフラグの一覧については、 AppendMenuメンバー関数を参照してください。1 つ以上の値を指定するには、ビットごとの OR 演算子、 MF_BYCOMMANDまたはMF_BYPOSITIONフラグを使用して結合。

nIDNewItem

新しいメニュー項目のコマンド ID を指定しますまたは、 nFlags MF_POPUPに、ポップアップ メニューのメニュー ハンドル (HMENU) 設定されている場合。NFlags MF_SEPARATORに設定されている場合がnIDNewItemパラメーターを (必要ではない) は無視されます。

lpszNewItem

新しいメニュー項目の内容を指定します。nFlags lpszNewItemは、次の方法で解釈されることができます。:

nFlags LpszNewItem の解釈
MF_OWNERDRAW アプリケーションのメニュー項目に関連付けられた追加のデータを維持するために使用できる、アプリケーション指定の 32 ビット値が含まれています。この 32 ビットの値がアプリケーションによって提供される構造体のitemDataメンバーには、 ために、WM_MEASUREITEM WM_DRAWITEMメッセージ。メニュー項目の最初に表示され、変更されたこれらのメッセージが送信されます。
MF_STRING Long null で終わる文字列へのポインターが含まれています。これは既定です。
MF_SEPARATOR LpszNewItemパラメーター (不要) は無視されます。

pBmp

メニュー項目として使用されるCBitmapオブジェクトへのポインター。

解説

NPositionで指定された位置に新しいメニュー項目を挿入し、メニューその他のアイテムを移動します。アプリケーションはnFlagsに値を設定すること、メニュー項目の状態を指定できます。

かどうかは (ウィンドウが表示されます)、ウィンドウにあるメニューが変更されるたびに、アプリケーションはcwnd::drawmenubar 関数を呼び出す必要があります。

NIDNewItemがポップアップ メニューを指定すると、それが挿入される、メニューの一部になります。メニューが破棄された場合は、挿入されたメニューも破棄されます。挿入されたメニュー競合を避けるために、 CMenuオブジェクトから分離する必要があります。

複数ドキュメント インターフェイス (MDI) 子ウィンドウが最大化されているアクティブ ・ ポップアップ メニューは、MDI アプリケーションのメニューでこの関数を呼び出すと、 MF_BYPOSITIONのフラグは、メニューを指定するのには、アプリケーションの挿入位置が予想よりも遠くに左を挿入する場合。アクティブな MDI 子ウィンドウのコントロール メニューが MDI フレーム ウィンドウのメニュー バーの最初の位置に挿入されるために発生します。メニューを正しく配置するには、アプリケーション使用されるそれ以外の場合、位置の値に 1 を追加する必要があります。アプリケーションでは、 WM_MDIGETACTIVEメッセージを使用して、現在アクティブな子ウィンドウが最大化されているかどうかを確認できます。

CMenu 概要|nbsp;クラス メンバー |階層図(&N)

参照特価;CMenu::AppendMenucwnd::drawmenubar 関数CMenu::SetMenuItemBitmapsCMenu::Detach :: 挿入(&N)

Index