关于RECT结构体

来源:互联网 发布:vb declare function 编辑:程序博客网 时间:2024/05/01 20:18


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上进行的开发,所以用那个都一样,就看你的习惯了

0 0