Compartir a través de


Función LockWindowUpdate (winuser.h)

La función LockWindowUpdate deshabilita o habilita el dibujo en la ventana especificada. Solo se puede bloquear una ventana cada vez.

Sintaxis

BOOL LockWindowUpdate(
  [in] HWND hWndLock
);

Parámetros

[in] hWndLock

Ventana en la que se deshabilitará el dibujo. Si este parámetro es NULL, se habilita dibujar en la ventana bloqueada.

Valor devuelto

Si la función se realiza correctamente, el valor devuelto es distinto de cero.

Si se produce un error en la función, el valor devuelto es cero, lo que indica que se produjo un error u otra ventana ya estaba bloqueada.

Comentarios

El propósito de la función LockWindowUpdate es permitir que los comentarios de arrastrar y colocar se dibujen en una ventana sin interferencias desde la propia ventana. La intención es que la ventana se bloquee cuando se dibujan y desbloquean comentarios cuando se completan los comentarios. LockWindowUpdate no está pensado para la supresión de uso general de la nueva ventana. Use el mensaje WM_SETREDRAW para deshabilitar el nuevo dibujo de una ventana determinada.

Si una aplicación con una ventana bloqueada (o cualquier ventana secundaria bloqueada) llama a la función GetDC, GetDCEx o BeginPaint , la función llamada devuelve un contexto de dispositivo con una región visible que está vacía. Esto se producirá hasta que la aplicación desbloquee la ventana llamando a LockWindowUpdate, especificando un valor null para hWndLock.

Si una aplicación intenta dibujar dentro de una ventana bloqueada, el sistema registra la extensión de la operación intentada en un rectángulo delimitador. Cuando se desbloquea la ventana, el sistema invalida el área dentro de este rectángulo delimitador, lo que obliga a que se envíe un mensaje de WM_PAINT final a la ventana bloqueada anteriormente y a sus ventanas secundarias. Si no se ha producido ningún dibujo mientras las actualizaciones de la ventana estaban bloqueadas, no se invalida ningún área.

LockWindowUpdate no hace que la ventana especificada sea invisible y no borra el bit de estilo WS_VISIBLE.

Una ventana bloqueada no se puede mover.

Requisitos

Requisito Value
Cliente mínimo compatible Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows 2000 Server [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado winuser.h (incluir Windows.h)
Library User32.lib
Archivo DLL User32.dll
Conjunto de API ext-ms-win-ntuser-draw-l1-1-2 (introducido en Windows 10, versión 10.0.10240)

Consulte también

BeginPaint

GetDC

GetDCEx

Funciones de dibujo y dibujo

Información general sobre pintura y dibujo

WM_PAINT