Rect 的相关操作
1.BOOL EqualRect(
CONST RECT *lprc1, // first rectangle
CONST RECT *lprc2 // second rectangle
);
说明:判断两个矩形结构是否相同。
非零表示成功,零表示失败。会设置GetLastError
2.BOOL InflateRect(
LPRECT lprc, // rectangle
int dx, // amount to adjust width
int dy // amount to adjust height
);
说明:调整一个矩形大小。
InflateRect函数在矩形的左和右增加dx,在矩形的上下增加dy。 dx和dy参数是由符号值。
正数增加宽和高,负数减小。
3.BOOL IntersectRect(
LPRECT lprcDst, // intersection buffer
CONST RECT *lprcSrc1, // first rectangle
CONST RECT *lprcSrc2 // second rectangle
);
说明:此函数使CRect等于两个现有矩形的交。即是两个源矩形的重合部分。
如果交不为空,则返回非零值;否则,如果交为空则返回0。
4.BOOL OffsetRect(
LPRECT lprc, // rectangle
int dx, // horizontal offset
int dy // vertical offset
);
说明:Lprc:[输入输出]指向一个RECT结构,其中包含了被移动矩形的逻辑坐标
Dx:[输入]指定的矩形左右移动的量。当向左移动的时候,这个参数必须是一个负值。
Dy:[输出]指定的矩形上下移动的量。当想上移动的时候,这个参数应该是一个负值。
返回值:
如果函数成功,返回非0,否则返回0。
备注:
因为使用矩形的目的不同,矩形函数没有很清楚的度量单位。通常,所有矩形的坐标和大小都是用逻辑值来表示。
映射模式和矩形函数决定了最终的度量单位。
5.BOOL UnionRect(
LPRECT lprcDst, // destination rectangle
CONST RECT *lprcSrc1, // first rectangle
CONST RECT *lprcSrc2 // second rectangle
);
说明:这个函数会装载一个lpDestRect目标矩形,它是lpSrc1Rect和lpSrc2Rect联合起来的结果。
目标矩形的所有点都同时位于两个源矩形里;也即是它们的一个交集。
返回值:
Long,非零表示成功,零表示失败。会设置GetLastError
参数表:
lpDestRect:RECT,用于容纳lpSrc1Rect和lpSrc2Rect联合运算结果的目标矩形
lpSrc1Rect:RECT,第一个源矩形
lpSrc2Rect:RECT,第二个源矩形