Freigeben über


InvalidateRect-Funktion (winuser.h)

Die InvalidateRect-Funktion fügt dem Updatebereich des angegebenen Fensters ein Rechteck hinzu. Der Updatebereich stellt den Teil des Clientbereichs des Fensters dar, der neu gezeichnet werden muss.

Syntax

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

Parameter

[in] hWnd

Ein Handle für das Fenster, dessen Updatebereich geändert wurde. Wenn dieser Parameter NULL ist, wird vom System alle Fenster ungültig und neu gezeichnet, nicht nur die Fenster für diese Anwendung, und sendet die WM_ERASEBKGND - und WM_NCPAINT-Nachrichten , bevor die Funktion zurückgegeben wird. Das Festlegen dieses Parameters auf NULL wird nicht empfohlen.

[in] lpRect

Ein Zeiger auf eine RECT-Struktur , die die Clientkoordinaten des Rechtecks enthält, das dem Updatebereich hinzugefügt werden soll. Wenn dieser Parameter NULL ist, wird der gesamte Clientbereich der Updateregion hinzugefügt.

[in] bErase

Gibt an, ob der Hintergrund innerhalb der Updateregion gelöscht werden soll, wenn der Updatebereich verarbeitet wird. Wenn dieser Parameter TRUE ist, wird der Hintergrund gelöscht, wenn die BeginPaint-Funktion aufgerufen wird. Wenn dieser Parameter FALSE ist, bleibt der Hintergrund unverändert.

Rückgabewert

Wenn die Funktion erfolgreich ist, ist der Rückgabewert ungleich Null.

Wenn die Funktion fehlerhaft ist, ist der Rückgabewert null.

Hinweise

Die ungültigen Bereiche werden in der Aktualisierungsregion gesammelt, bis die Region verarbeitet wird, wenn die nächste WM_PAINT Nachricht auftritt oder bis die Region mithilfe der ValidateRect - oder ValidateRgn-Funktion überprüft wird.

Das System sendet eine WM_PAINT Nachricht an ein Fenster, wenn dessen Updatebereich nicht leer ist und sich keine weiteren Nachrichten in der Anwendungswarteschlange für dieses Fenster befinden.

Wenn der bErase-Parameter für einen Beliebigen Teil des Updatebereichs TRUE ist, wird der Hintergrund in der gesamten Region gelöscht, nicht nur im angegebenen Teil.

Beispiele

Ein Beispiel finden Sie unter Ungültig erklären des Clientbereichs.

Anforderungen

   
Unterstützte Mindestversion (Client) Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile winuser.h (einschließlich Windows.h)
Bibliothek User32.lib
DLL User32.dll
APIs ext-ms-win-ntuser-draw-l1-1-0 (in Windows 8 eingeführt)

Weitere Informationen

BeginPaint

InvalidateRgn

Mal- und Zeichenfunktionen

Übersicht über Malerei und Zeichnung

RECT

ValidateRect

ValidateRgn

WM_ERASEBKGND

WM_NCPAINT

WM_PAINT