EnableWindow 函式 (winuser.h)
啟用或停用指定視窗或控制項的滑鼠和鍵盤輸入。 停用輸入時,視窗不會收到輸入,例如滑鼠點選和按下按鍵。 啟用輸入時,視窗會接收所有輸入。
語法
BOOL EnableWindow(
[in] HWND hWnd,
[in] BOOL bEnable
);
參數
[in] hWnd
類型: HWND
要啟用或停用之視窗的控制碼。
[in] bEnable
類型: BOOL
指出是否要啟用或停用視窗。 如果此參數為 TRUE,則會啟用視窗。 如果參數為 FALSE,則會停用視窗。
傳回值
類型: BOOL
如果先前已停用視窗,則傳回值為非零值。
如果先前未停用視窗,則傳回值為零。
備註
如果視窗已停用,系統會傳送 WM_CANCELMODE 訊息。 如果視窗的啟用狀態正在變更,系統會在WM_CANCELMODE訊息之後傳送WM_ENABLE訊息。 (這些訊息會在 EnableWindow 傳回之前傳送。) 如果視窗已停用,則其子視窗會隱含停用,但不會傳送 WM_ENABLE 訊息。
必須先啟用視窗,才能加以啟用。 例如,如果應用程式正在顯示無強制回應對話方塊,並已停用其主視窗,應用程式必須先啟用主視窗,才能終結對話方塊。 否則,另一個視窗會接收鍵盤焦點並啟動。 如果停用子視窗,當系統嘗試判斷應該接收滑鼠訊息的視窗時,就會忽略此視窗。
根據預設,視窗會在建立時啟用。 若要建立一開始停用的視窗,應用程式可以在CreateWindow或CreateWindowEx函式中指定WS_DISABLED樣式。 建立視窗之後,應用程式可以使用 EnableWindow 來啟用或停用視窗。
應用程式可以使用這個函式來啟用或停用對話方塊中的控制項。 停用的控制項無法接收鍵盤焦點,也無法讓使用者存取它。
規格需求
最低支援的用戶端 | Windows 2000 Professional [僅限傳統型應用程式] |
最低支援的伺服器 | Windows 2000 Server [僅限桌面應用程式] |
目標平台 | Windows |
標頭 | winuser.h (包含 Windows.h) |
程式庫 | User32.lib |
Dll | User32.dll |
API 集合 | ext-ms-win-ntuser-window-l1-1-4 (于 Windows 10 10.0.14393 版) |
另請參閱
概念
參考