GetSystemMenu 函式 (winuser.h)

可讓應用程式存取視窗功能表 (也稱為系統功能表或控件功能表) 進行複製和修改。

語法

HMENU GetSystemMenu(
  [in] HWND hWnd,
  [in] BOOL bRevert
);

參數

[in] hWnd

類型: HWND

將擁有視窗功能表複本之視窗的句柄。

[in] bRevert

類型: BOOL

要採取的動作。 如果此參數為 FALSE,GetSystemMenu 會傳回目前使用中視窗功能表複本的句柄。 復本一開始與視窗功能表相同,但可以加以修改。 如果此參數為 TRUE,GetSystemMenu 會將視窗功能表重設為默認狀態。 如果有任何,則會終結上一個視窗功能表。

傳回值

類型: HMENU

如果 bRevert 參數為 FALSE,則傳回值是視窗功能表複本的句柄。 如果 bRevert 參數為 TRUE,則傳回值為 NULL

備註

任何不使用 GetSystemMenu 函式的視窗,使其自己的視窗功能表複本會收到標準視窗功能表。

視窗功能表一開始包含具有各種標識碼值的專案,例如 SC_CLOSESC_MOVESC_SIZE

視窗功能表上的功能表項會傳送 WM_SYSCOMMAND 訊息。

所有預先定義的視窗功能表項都有大於0xF000的標識碼編號。 如果應用程式將命令新增至視窗功能表,它應該使用小於0xF000的標識碼編號。

系統會根據情況,自動將標準視窗功能表上的項目呈現灰色。 應用程式可以回應在顯示任何功能表之前傳送 的WM_INITMENU 訊息,以執行自己的檢查或灰色。

規格需求

需求
最低支援的用戶端 Windows 2000 專業版 [僅限傳統型應用程式]
最低支援的伺服器 Windows 2000 Server [僅限傳統型應用程式]
目標平台 Windows
標頭 winuser.h (包括 Windows.h)
程式庫 User32.lib
Dll User32.dll
API 集合 ext-ms-win-ntuser-menu-l1-1-0 (於 Windows 8)

另請參閱

概念

GetMenu

InsertMenuItem

功能表

參考

SetMenuItemInfo

WM_INITMENU

WM_SYSCOMMAND