共用方式為


SetMenuItemInfoA 函式 (winuser.h)

變更功能表項的相關信息。

語法

BOOL SetMenuItemInfoA(
  [in] HMENU            hmenu,
  [in] UINT             item,
       BOOL             fByPositon,
  [in] LPCMENUITEMINFOA lpmii
);

參數

[in] hmenu

類型:HMENU

包含功能表項之功能表的句柄。

[in] item

類型:UINT

要變更之功能表項的標識碼或位置。 此參數的意義取決於 fByPosition的值。

fByPositon

[in] lpmii

類型:LPMENUITEMINFO

MENUITEMINFO 的指標 結構,其中包含功能表項的相關信息,並指定要變更的功能表項屬性。

傳回值

類型:BOOL

如果函式成功,則傳回值為非零值。

如果函式失敗,傳回值為零。 若要取得擴充的錯誤資訊,請使用 getLastError 函式

言論

每當功能表變更時,應用程式都必須呼叫 DrawMenuBar 函式,無論功能表是否在顯示的視窗中。

為了讓鍵盤快捷方式使用位圖或擁有者繪製的功能表項,功能表的擁有者必須處理 WM_MENUCHAR 訊息。 如需詳細資訊,請參閱 Owner-Drawn 功能表和WM_MENUCHAR訊息

例子

如需範例,請參閱 Owner-Drawn 選單項範例

注意

winuser.h 標頭會根據 UNICODE 預處理器常數的定義,將 SetMenuItemInfo 定義為自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱函式原型的 慣例。

要求

要求 價值
最低支援的用戶端 Windows 2000 Professional [僅限傳統型應用程式]
支援的最低伺服器 Windows 2000 Server [僅限傳統型應用程式]
目標平臺 窗戶
標頭 winuser.h (包括 Windows.h)
連結庫 User32.lib
DLL User32.dll
API 集 ext-ms-win-ntuser-menu-l1-1-0 (在 Windows 8 中引進)

另請參閱

概念

DrawMenuBar

GetMenuItemInfo

MENUITEMINFO

功能表

參考