다음을 통해 공유


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

참고 항목

참조

CRgn 클래스

계층 구조 차트

CRgn::CreateRectRgn

CRgn::CreateRoundRectRgn

CreateRectRgnIndirect