typedef struct tagRECT
{
LONG left;
LONG top;
LONG right;
LONG bottom;
} RECT, *PRECT, NEAR *NPRECT, FAR *LPRECT;
RECT结构定义一个矩形的左上角和右下角的坐标
成员
left 指定矩形左上角的X坐标
top指定矩形左上角的Y坐标
right指定矩形右下角的X坐标
bottom指定矩形右下角的Y坐标
CRect的构造函数 CRect有如下6个构造函数:
CRect( );
CRect( int l, int t, int r, int b );
CRect( const RECT& srcRect );
CRect( LPCRECT lpSrcRect );
CRect( POINT point, SIZE size );
CRect( POINT topLeft, POINT bottomRight );
说明:分别以不同的方式构造CRect对象,参数l,t,r,b分别指定矩形的左边、上边、右边和底边。SrcRect是一个RECT结构的引用。LpSrcRect是一个指向RECT结构的指针。Point指定矩形的左上角顶点的坐标,size指定矩形的长度和宽度。topLeft指定矩形的左上角顶点的坐标,bottomRight指定矩形的右下角顶点的坐标。
RECT, PRECT, NPRECT, LPRECT;它们之间有什么区别?
RECT是结构体类型,其余三个都是指向RECT的指针类型。
RECT是一个表示矩形的结构
PRECT表示指向矩形结构的指针
NPRECT表示指向矩形结构的近指针
LPRECT表示指向矩形结构的长指针
最后这3个结构在32位的Windows中都是一样的,在16位的Windows系统中就有区别了,只是为了与老的16位程序兼容才定义了这些结构指针的,对于现在的程序来说,都是在32位Windows上进行的开发,所以用那个都一样,就看你的习惯了