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 消息。
必须先启用窗口才能激活它。 例如,如果应用程序显示无模式对话框并禁用其main窗口,则应用程序必须在销毁对话框之前启用main窗口。 否则,另一个窗口将接收键盘焦点并被激活。 如果禁用了子窗口,当系统尝试确定哪个窗口应接收鼠标消息时,将忽略该窗口。
默认情况下,创建的窗口最初处于已启用状态。 若要创建最初禁用的窗口,应用程序可以在 CreateWindow 或 CreateWindowEx 函数中指定WS_DISABLED样式。 创建窗口后,应用程序可以使用 EnableWindow 启用或禁用窗口。
应用程序可以使用此函数来启用或禁用对话框中的控件。 禁用的控件无法接收键盘焦点,用户也无法获取对它的访问权限。
要求
最低受支持的客户端 | Windows 2000 Professional [仅限桌面应用] |
最低受支持的服务器 | Windows 2000 Server [仅限桌面应用] |
目标平台 | Windows |
标头 | winuser.h (包括 Windows.h) |
Library | User32.lib |
DLL | User32.dll |
API 集 | Windows 10版本 10.0.14393 中引入的 ext-ms-win-ntuser-window-l1-1-4 () |
请参阅
概念性
引用