CRgn::CreateRectRgnIndirect
저장 된 사각형 영역을 만드는 데는 CRgn 개체입니다.
BOOL CreateRectRgnIndirect(
LPCRECT lpRect
);
매개 변수
lpRect
가리키는 있는 RECT 구조 또는 CRect 논리 영역의 왼쪽 위 및 오른쪽 아래 모서리의 좌표를 포함 하는 개체입니다.RECT 는 구조를 가집니다.typedef struct tagRECT {
int left;
int top;
int right;
int bottom;
} RECT;
반환 값
작업이 성공 하면 0이 아닌. 그렇지 않으면 0입니다.
설명
크기의 영역에서 32767 32767 논리 단위 또는 64k의 메모리 제한, 작은 값.
가 완료 만든 영역을 사용 하면 CreateRectRgnIndirect, 응용 프로그램을 사용 해야는 CGDIObject::DeleteObject 멤버 함수 영역을 제거 합니다.
예제
CRgn rgnA, rgnB, rgnC;
CRect rectA(50, 50, 150, 150);
CRect rectB(100, 50, 200, 150);
VERIFY(rgnA.CreateRectRgnIndirect(&rectA));
VERIFY(rgnB.CreateEllipticRgnIndirect(&rectB));
VERIFY(rgnC.CreateRectRgn( 0, 0, 50, 50 ));
int nCombineResult = rgnC.CombineRgn( &rgnA, &rgnB, RGN_AND );
ASSERT( nCombineResult != ERROR && nCombineResult != NULLREGION );
CBrush brA, brB, brC;
VERIFY(brA.CreateSolidBrush( RGB(255, 0, 0) ));
VERIFY(pDC->FrameRgn( &rgnA, &brA, 2, 2 )); // rgnA Red
VERIFY(brB.CreateSolidBrush( RGB(0, 255, 0) ));
VERIFY(pDC->FrameRgn( &rgnB, &brB, 2, 2 )); // rgnB Green
VERIFY(brC.CreateSolidBrush( RGB(0, 0, 255) )); // rgnC Blue
VERIFY(pDC->FrameRgn( &rgnC, &brC, 2, 2 ));
요구 사항
헤더: afxwin.h