ValidateRect function (winuser.h)

The ValidateRect function validates the client area within a rectangle by removing the rectangle from the update region of the specified window.


BOOL ValidateRect(
  [in] HWND       hWnd,
  [in] const RECT *lpRect


[in] hWnd

Handle to the window whose update region is to be modified. If this parameter is NULL, the system invalidates and redraws all windows and sends the WM_ERASEBKGND and WM_NCPAINT messages to the window procedure before the function returns.

[in] lpRect

Pointer to a RECT structure that contains the client coordinates of the rectangle to be removed from the update region. If this parameter is NULL, the entire client area is removed.

Return value

If the function succeeds, the return value is nonzero.

If the function fails, the return value is zero.


The BeginPaint function automatically validates the entire client area. Neither the ValidateRect nor ValidateRgn function should be called if a portion of the update region must be validated before the next WM_PAINT message is generated.

The system continues to generate WM_PAINT messages until the current update region is validated.


Requirement Value
Minimum supported client Windows 2000 Professional [desktop apps only]
Minimum supported server Windows 2000 Server [desktop apps only]
Target Platform Windows
Header winuser.h (include Windows.h)
Library User32.lib
DLL User32.dll
API set ext-ms-win-ntuser-draw-l1-1-0 (introduced in Windows 8)

See also




Painting and Drawing Functions

Painting and Drawing Overview