winuser.h


InvalidateRect

La función InvalidateRect añade un rectángulo a la región de actualización de la ventana especificada. La región de actualización representa la porción del área de cliente de la ventana que se debe repintar.

Sintaxis

BOOL InvalidateRect(
    HWND hWnd,            // manipulador de la ventana con la región de actualización modificada  
    CONST RECT * lpRect,  // dirección del rectángulo con las coordenadas
    BOOL bErase           // flag de borrado de fondo
   );

Parámetros:

hWnd: identifica la ventana cuya región de actualización ha cambiado. Si este parámetro es NULL, Windows invalida y redibuja todas las ventanas, y envía los mensajes WM_ERASEBKGND y WM_NCPAINT al procedimiento de ventana antes de que la función regrese.

lpRect: apunta a una estructura RECT que contiene las coordenadas de cliente del rectángulo que se añadirá a la región de actualización. Si este parámetro es NULL, se añade a la región de actualización toda el área de cliente.

bErase: especifica si el fondo en el interior de la región de actualización debe ser borrada cuando la región de actualización sea procesada. Si este parámetro es TRUE, el fondo será borrada cuando la función BeginPaint sea llamada. Si es FALSE, el fondo permanece inalterado.

Valor de retorno

Si la función tiene éxito, el valor de retorno es TRUE.

Si la función falla, el valor de retorno es FALSE.

Observaciones

Las áreas invalidadas se acumulan en la región de actualización hasta que se procese el siguiente mensaje WM_PAINT o hasta que la región sea validada usando las funciones ValidateRect o ValidateRgn.

Windows envía un mensaje WM_PAINT a la ventana cada vez que su región de actualización no esté vacía y no haya otros mensajes en la cola de la aplicación para esa ventana.

Si el parámetro bErase es TRUE para cualquier parte de la región de actualización, el fondo será borrado en la región completa, no sólo en una parte.