winuser.h


EnableWindow

La función EnableWindow inhibe o desinhibe la entrada del ratón y teclado para la ventana o control especificado. Cuando la entrada se inhibe, la ventana no recibe entradas del tipo de los clics del ratón o de teclas pulsadas. Cuando la entrada está permitida, la ventana recibe cualquier entrada.

Sintaxis

BOOL EnableWindow(
    HWND hWnd,    // manipulador de ventana
    BOOL bEnable  // bandera para inhibir o desinhibir la entrada
   );

Parámetros

hWnd: identifica la ventana a inhibir o desinhibir.

bEnable: especifica si se debe inhibir o desinhibir la ventana. Si este parámetro es TRUE, la ventana se desinhibe. Si es FALSE, la ventana se inhibe.

Valor de retorno

Si la ventana estaba inhibida previamente, el valor de retorno es distinto de cero.

Si la ventana no estaba inhibida previamente, el valor de retorno es cero. Para obtener información adicional sobre el error, llamar a GetLastError.

Observaciones

Si el estado de inhibición de una ventana cambia, se envía un mensaje WM_ENABLE antes de que la función EnableWindow regrese. Si una ventana estaba ya inhibida, todas sus ventanas hija están inhibidas de forma implícita, de modo que no se les envía un mensaje WM_ENABLE.

Una ventana debe ser desinhibida antes de que pueda ser activada. Por ejemplo, si una aplicación está mostrando un cuadro de diálogo no modal y ha inhibido su ventana principal, la aplicación debe desinhibir la ventana principal antes de destruir el cuadro de diálogo. De otro modo, otra ventana recibirá el foco del teclado y será activada. Si una ventana hija se inhibe, será ignorada cuando Windows intente determinar qué ventana debe recibir mensajes del ratón.

Por defecto, una ventana está desinhibida cuando es creada. Para crear una ventana inicialmente inhibida, una aplicación puede especificar el estilo WS_DISABLED en la función CreateWindow o CreateWindowEx. Una vez la ventana ha sido creada, una aplicación puede usar la función EnableWindow para inhibir o desinhibir la ventana.

Una aplicación puede usar esta función para inhibir o desinhibir un control en un cuadro de diálogo. Un control inhibido no puede recibir el foco del teclado, ni tampoco puede ser accedido.