InvalidateRect, fonction (winuser.h)

La fonction InvalidateRect ajoute un rectangle à la région de mise à jour de la fenêtre spécifiée. La région de mise à jour représente la partie de la zone cliente de la fenêtre qui doit être redessinée.

Syntaxe

BOOL InvalidateRect(
  [in] HWND       hWnd,
  [in] const RECT *lpRect,
  [in] BOOL       bErase
);

Paramètres

[in] hWnd

Handle de la fenêtre dont la région de mise à jour a changé. Si ce paramètre a la valeur NULL, le système invalide et redessine toutes les fenêtres, pas seulement les fenêtres de cette application, et envoie les messages WM_ERASEBKGND et WM_NCPAINT avant le retour de la fonction. Il n’est pas recommandé de définir ce paramètre sur NULL .

[in] lpRect

Pointeur vers une structure RECT qui contient les coordonnées clientes du rectangle à ajouter à la région de mise à jour. Si ce paramètre a la valeur NULL, la zone cliente entière est ajoutée à la région de mise à jour.

[in] bErase

Spécifie si l’arrière-plan dans la région de mise à jour doit être effacé lors du traitement de la région de mise à jour. Si ce paramètre a la valeur TRUE, l’arrière-plan est effacé lorsque la fonction BeginPaint est appelée. Si ce paramètre a la valeur FALSE, l’arrière-plan reste inchangé.

Valeur retournée

Si la fonction réussit, la valeur de retour est différente de zéro.

Si la fonction échoue, la valeur de retour est égale à zéro.

Remarques

Les zones invalidées s’accumulent dans la région de mise à jour jusqu’à ce que la région soit traitée lorsque le message WM_PAINT suivant se produit ou jusqu’à ce que la région soit validée à l’aide de la fonction ValidateRect ou ValidateRgn .

Le système envoie un message WM_PAINT à une fenêtre chaque fois que sa région de mise à jour n’est pas vide et qu’il n’y a pas d’autres messages dans la file d’attente d’application pour cette fenêtre.

Si le paramètre bErase a la valeur TRUE pour n’importe quelle partie de la région de mise à jour, l’arrière-plan est effacé dans l’ensemble de la région, pas seulement dans la partie spécifiée.

Exemples

Pour obtenir un exemple, consultez Invalidation de la zone cliente.

Configuration requise

   
Client minimal pris en charge Windows 2000 Professionnel [applications de bureau uniquement]
Serveur minimal pris en charge Windows 2000 Server [applications de bureau uniquement]
Plateforme cible Windows
En-tête winuser.h (inclure Windows.h)
Bibliothèque User32.lib
DLL User32.dll
Ensemble d’API ext-ms-win-ntuser-draw-l1-1-0 (introduit dans Windows 8)

Voir aussi

BeginPaint

InvalidateRgn

Fonctions de peinture et de dessin

Vue d’ensemble de la peinture et du dessin

RECT

ValidateRect

ValidateRgn

WM_ERASEBKGND

WM_NCPAINT

WM_PAINT