CombineRgn功能组合两个区域,并将结果存储在第三个区域。两个区域根据指定的模式组合。
int CombineRgn
HRGN 【hrgnDesten】, | //处理目的地区域 |
HRGN 【hrgnSrc1】, | //处理源区域 |
HRGN 【hrgnSrc2】, | //处理源区域 |
INT 【fnCombineMode】 | //区域组合模式 |
); |
参数
【hrgnDesten】
标识通过组合其他两个区域定义尺寸的新区域。(该地区必须在调用CombineRgn之前存在。)
【hrgnSrc1】
标识要组合的两个区域中的第一个。
【hrgnSrc2】
标识要组合的两个区域中的第二个。
【fnCombineMode】
指定一个指示两个区域如何组合的模式。此参数可以是以下值之一:
值 | 描述 |
RGN_AND | 创建两个组合区域的交集。 |
RGN_COPY | 创建由【hrgnSrc1】标识的区域的副本。 |
RGN_DIFF | 组合【hrgnSrc1】不属于【hrgnSrc2】的部分。 |
RGN_OR | 创建两个组合区域的联合。 |
RGN_XOR | 为任何重叠区域创建两个组合区域【除】的联合。 |
返回值
返回值指定结果区域的类型。它可以是以下值之一:
值 | 含义 |
NULLREGION | 该地区是空的。 |
SIMPLEREGION | 该区域是单个矩形。 |
COMPLEXREGION | 该区域不止是单个矩形。 |
ERROR | 没有创建区域。 |
备注
这三个地区不一定有区别。例如,【hrgnSrc1】参数可以等于【hrgnDesten】参数。
也可以看看
CreateEllipticRgn, CreateEllipticRgnIndirect, CreatePolygonRgn, CreatePolyPolygonRgn, CreateRectRgn, CreateRectRgnIndirect, CreateRoundRectRgn