Condividi tramite


Funzione InvalidateRect (winuser.h)

La funzione InvalidateRect aggiunge un rettangolo all'area di aggiornamento della finestra specificata. L'area di aggiornamento rappresenta la parte dell'area client della finestra che deve essere ridisegnata.

Sintassi

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

Parametri

[in] hWnd

Handle della finestra di cui è stata modificata l'area di aggiornamento. Se questo parametro è NULL, il sistema invalida e ridisegna tutte le finestre, non solo le finestre per questa applicazione e invia il WM_ERASEBKGND e WM_NCPAINT messaggi prima che la funzione restituisca. Non è consigliabile impostare questo parametro su NULL .

[in] lpRect

Puntatore a una struttura RECT che contiene le coordinate client del rettangolo da aggiungere all'area di aggiornamento. Se questo parametro è NULL, l'intera area client viene aggiunta all'area di aggiornamento.

[in] bErase

Specifica se lo sfondo all'interno dell'area di aggiornamento deve essere cancellato quando viene elaborata l'area di aggiornamento. Se questo parametro è TRUE, lo sfondo viene cancellato quando viene chiamata la funzione BeginPaint . Se questo parametro è FALSE, lo sfondo rimane invariato.

Valore restituito

Se la funzione ha esito positivo, il valore restituito è diverso da zero.

Se la funzione ha esito negativo, il valore restituito è zero.

Commenti

Le aree invalidate si accumulano nell'area di aggiornamento fino a quando l'area non viene elaborata quando si verifica il messaggio di WM_PAINT successivo o fino a quando l'area non viene convalidata usando la funzione ValidateRect o ValidateRgn .

Il sistema invia un messaggio di WM_PAINT a una finestra ogni volta che l'area di aggiornamento non è vuota e non sono presenti altri messaggi nella coda dell'applicazione per tale finestra.

Se il parametro bErase è TRUE per qualsiasi parte dell'area di aggiornamento, lo sfondo viene cancellato nell'intera area, non solo nella parte specificata.

Esempio

Per un esempio, vedere Invalidamento dell'area client.

Requisiti

   
Client minimo supportato Windows 2000 Professional [solo app desktop]
Server minimo supportato Windows 2000 Server [solo app desktop]
Piattaforma di destinazione Windows
Intestazione winuser.h (include Windows.h)
Libreria User32.lib
DLL User32.dll
Set di API ext-ms-win-ntuser-draw-l1-1-0 (introdotto in Windows 8)

Vedi anche

Beginpaint

InvalidateRgn

Funzioni di disegno e disegno

Panoramica di disegno e disegno

RECT

ValidateRect

ValidateRgn

WM_ERASEBKGND

WM_NCPAINT

WM_PAINT