CombineRgn 函数 (wingdi.h)

CombineRgn 函数合并了两个区域,并将结果存储在第三个区域中。 这两个区域根据指定的模式组合在一起。

语法

int CombineRgn(
  [in] HRGN hrgnDst,
  [in] HRGN hrgnSrc1,
  [in] HRGN hrgnSrc2,
  [in] int  iMode
);

参数

[in] hrgnDst

新区域的句柄,其维度通过组合其他两个区域来定义。 (在调用 CombineRgn 之前必须存在此区域。)

[in] hrgnSrc1

要组合的两个区域中的第一个区域的句柄。

[in] hrgnSrc2

要组合的两个区域中的第二个的句柄。

[in] iMode

一种模式,指示如何组合这两个区域。 此参数的取值可为下列值之一:

含义
RGN_AND
创建两个组合区域的交集。
RGN_COPY
创建 由 hrgnSrc1 标识的区域的副本。
RGN_DIFF
合并 hrgnSrc1 中不属于 hrgnSrc2 的部分。
RGN_OR
创建两个组合区域的联合。
RGN_XOR
创建两个组合区域(任何重叠区域除外)的联合。

返回值

返回值指定结果区域的类型。 可以是下列值之一。

返回代码 说明
NULLREGION
该区域为空。
SIMPLEREGION
该区域是单个矩形。
COMPLEXREGION
该区域不止一个矩形。
ERROR
未创建任何区域。

注解

这三个区域不需要是不同的。 例如, hrgnSrc1 参数可以等于 hrgnDest 参数。

要求

要求
最低受支持的客户端 Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器 Windows 2000 Server [仅限桌面应用]
目标平台 Windows
标头 wingdi.h (包括 Windows.h)
Library Gdi32.lib
DLL Gdi32.dll

另请参阅

CreateEllipticRgn

CreateEllipticRgnIndirect

CreatePolyPolygonRgn

CreatePolygonRgn

CreateRectRgn

CreateRectRgnIndirect

CreateRoundRectRgn

区域函数

区域概述