Shell_MergeMenus 函式 (shlobj_core.h)

[Shell_MergeMenus 可用於需求一節中指定的操作系統。 後續版本可能會變更或無法使用。]

合併兩個功能表。

語法

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

hmDst 中的點,之後會插入 hmSrc 中的專案。

uIDAdjust

類型: UINT

此號碼會新增至每個功能表的標識碼,以提供調整的標識碼。 若未調整,請將 設定為 0uIDAdjust 的值通常是 hmDst 中的項目數。 您可以使用 GetMenuItemCount 來取得此數位。

uIDAdjustMax

類型: UINT

要新增至功能表的調整標識碼上限。 未加入任何大於此值的調整標識符。 若要允許所有識別碼,請將此參數設定為 0xFFFF。

uFlags

類型: ULONG

下列一或多個旗標。

MM_ADDSEPARATOR

如果兩個功能表中的專案不存在,請新增分隔符。 如果您要將 hmSrc 中的專案插入 hmDst 中間,則會在 hmSrc 材質上方和下方新增分隔符。

MM_DONTREMOVESEPS

請勿移除兩個功能表中的任何現有分隔符。 請注意,這可能會導致數據列中有兩個分隔符。

MM_SUBMENUSHAVEIDS

如果子功能表具有應該調整的標識碼,請設定此旗標。

傳回值

類型: UINT

傳回功能表結尾的下一個開啟標識碼, (調整的標識碼上限 + 1) 。

規格需求

需求
最低支援的用戶端 Windows XP [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2003 [僅限桌面應用程式]
目標平台 Windows
標頭 shlobj_core.h (包含 Shlobj.h)
程式庫 Shell32.lib
Dll Shell32.dll (6.0 版或更新版本)
API 集合 ext-ms-win-shell-shell32-l1-2-1 (在 Windows 10 10.0.10240 版中引進)