SetBoundsRect function (wingdi.h)

The SetBoundsRect function controls the accumulation of bounding rectangle information for the specified device context. The system can maintain a bounding rectangle for all drawing operations. An application can examine and set this rectangle. The drawing boundaries are useful for invalidating bitmap caches.

Syntax

UINT SetBoundsRect(
  [in] HDC        hdc,
  [in] const RECT *lprect,
  [in] UINT       flags
);

Parameters

[in] hdc

A handle to the device context for which to accumulate bounding rectangles.

[in] lprect

A pointer to a RECT structure used to set the bounding rectangle. Rectangle dimensions are in logical coordinates. This parameter can be NULL.

[in] flags

Specifies how the new rectangle will be combined with the accumulated rectangle. This parameter can be one of more of the following values.

Value Meaning
DCB_ACCUMULATE
Adds the rectangle specified by the lprcBounds parameter to the bounding rectangle (using a rectangle union operation). Using both DCB_RESET and DCB_ACCUMULATE sets the bounding rectangle to the rectangle specified by the lprcBounds parameter.
DCB_DISABLE
Turns off boundary accumulation.
DCB_ENABLE
Turns on boundary accumulation, which is disabled by default.
DCB_RESET
Clears the bounding rectangle.

Return value

If the function succeeds, the return value specifies the previous state of the bounding rectangle. This state can be a combination of the following values.

Value Meaning
DCB_DISABLE Boundary accumulation is off.
DCB_ENABLE Boundary accumulation is on. DCB_ENABLE and DCB_DISABLE are mutually exclusive.
DCB_RESET Bounding rectangle is empty.
DCB_SET Bounding rectangle is not empty. DCB_SET and DCB_RESET are mutually exclusive.
 

If the function fails, the return value is zero.

Remarks

The DCB_SET value is a combination of the bit values DCB_ACCUMULATE and DCB_RESET. Applications that check the DCB_RESET bit to determine whether the bounding rectangle is empty must also check the DCB_ACCUMULATE bit. The bounding rectangle is empty only if the DCB_RESET bit is 1 and the DCB_ACCUMULATE bit is 0.

Requirements

Requirement Value
Minimum supported client Windows 2000 Professional [desktop apps only]
Minimum supported server Windows 2000 Server [desktop apps only]
Target Platform Windows
Header wingdi.h (include Windows.h)
Library Gdi32.lib
DLL Gdi32.dll

See also

GetBoundsRect

Painting and Drawing Functions

Painting and Drawing Overview

RECT