CRect::SubtractRect

BOOL SubtractRect( LPCRECT lpRectSrc1, LPCRECT lpRectSrc2 );

返回值:如果函数成功则返回非零值;否则返回0。

参数:
lpRectSrc1指向一个RECT结构或CRect对象,将从这个结构或对象中减去某个矩形。
lpRectSrc2指向一个RECT结构或CRect对象,将从由lpRectSrc1参数指定的矩形中减去这个结构或对象。

说明:
该函数使一个CRect对象的尺寸等于从lpRectSrc1中减去lpRectSrc2的差,这个差值是一个包含所有在lpRectScr1内,而不在lpRectScr1 和lpRectScr2的交之中的点的最小矩形。
如果由lpRectScr2指定的矩形和由lpRectScr1指定的矩形没有在x或y方向之一的方向上重叠,则由lpRectScr1指定的矩形将没有改变。
例如,如果lpRectScr1是(10,10,100,100),lpRectScr2是(50,50,150,150,)则当函数返回时,由lpRectScr1指定的矩形将没有改变。如果lpRectScr1是(10,10,100,100,),lpRectScr2是(50,10,150,150),则当函数返回时,由lpRectScr1指定的矩形将包含坐标(10,10,50,100)。
SubtractRect与操作符-和操作符-=是不一样的。这两个操作符都不调用SubtractRect。
注意:这两个矩形都必须是符合规范的,否则此函数将失败。你可以在调用此函数之前,调用NormalizeRect来使矩形规范化。

请参阅:
CRect::operator -, CRect::operator -=, CRect::IntersectRect, CRect::UnionRect, CRect::NormalizeRect, ::SubtractRect