Shell_MergeMenus関数 (shlobj_core.h)

[Shell_MergeMenus は、[要件] セクションで指定したオペレーティング システムで使用できます。 以降のバージョンでは変更または使用できない場合があります。]

2 つのメニューをマージします。

構文

UINT Shell_MergeMenus(
  [in] HMENU hmDst,
  [in] HMENU hmSrc,
       UINT  uInsert,
       UINT  uIDAdjust,
       UINT  uIDAdjustMax,
       ULONG uFlags
);

パラメーター

[in] hmDst

種類: HMENU

hmSrc が追加される宛先メニュー。

[in] hmSrc

種類: HMENU

hmDst に追加されるソース メニュー。

uInsert

型: UINT

hmSrc 内のエントリが挿入される hmDst 内のポイント。

uIDAdjust

型: UINT

この番号は、調整された ID を与えるために各メニューの ID に追加されます。 調整しない場合は を に 0 設定します。 通常、uIDAdjust の値は hmDst 内の項目の数になります。 この数値は 、GetMenuItemCount を使用して取得できます。

uIDAdjustMax

型: UINT

メニューに追加する調整された最大 ID。 この値より大きい調整済み ID は追加されません。 すべての ID を許可するには、このパラメーターを 0xFFFF に設定します。

uFlags

種類: ULONG

次のフラグの 1 つ以上。

MM_ADDSEPARATOR

2 つのメニューが存在しない場合は、2 つのメニューの間に区切り記号を追加します。 hmSrc のエントリを hmDst の中央に挿入する場合は、hmSrc マテリアルの上下に区切り記号が追加されます。

MM_DONTREMOVESEPS

2 つのメニューの既存の区切り記号を削除しないでください。 これにより、1 行に 2 つの区切り記号が表示される可能性があることに注意してください。

MM_SUBMENUSHAVEIDS

サブメニューに調整する必要がある ID がある場合は、このフラグを設定します。

戻り値

型: UINT

メニューの最後にある次の開いている ID (調整された最大 ID + 1) を返します。

要件

要件
サポートされている最小のクライアント Windows XP (デスクトップ アプリのみ)
サポートされている最小のサーバー Windows Server 2003 (デスクトップ アプリのみ)
対象プラットフォーム Windows
ヘッダー shlobj_core.h (Shlobj.h を含む)
Library Shell32.lib
[DLL] Shell32.dll (バージョン 6.0 以降)
API セット ext-ms-win-shell-shell32-l1-2-1 (Windows 10 バージョン 10.0.10240 で導入)