CRgn::CreateRoundRectRgn
會在 CRgn 物件儲存具有圓角的矩形區域。
BOOL CreateRoundRectRgn(
int x1,
int y1,
int x2,
int y2,
int x3,
int y3
);
參數
x1
指定區域左上角的邏輯 X 座標。y1
指定區域左上角的邏輯 Y 座標。x2
指定區域的右下角的邏輯 X 座標。y2
指定區域的右下角的邏輯 Y 座標。x3
指定用於之橢圓形的寬度建立圓角矩形。y3
指定用於橢圓形的高度建立圓角矩形。
傳回值
不是零,如果作業成功,則為 0。
備註
區域的大小限制為記憶體 32,767 x 32,767 個邏輯單位或 64K,視何者較小。
當應用程式完成使用區域建立 CreateRoundRectRgn 函式時,它應該選擇區域在裝置內容之外加以使用 CGDIObject::DeleteObject 成員函式將它移除。
範例
CRgn rgnA, rgnB, rgnC;
VERIFY(rgnA.CreateRoundRectRgn( 50, 50, 150, 150, 30, 30 ));
VERIFY(rgnB.CreateRoundRectRgn( 200, 75, 250, 125, 50, 50 ));
VERIFY(rgnC.CreateRectRgn( 0, 0, 50, 50 ));
int nCombineResult = rgnC.CombineRgn( &rgnA, &rgnB, RGN_OR );
ASSERT( nCombineResult != ERROR && nCombineResult != NULLREGION );
CBrush brA, brB, brC;
VERIFY(brA.CreateSolidBrush( RGB(255, 0, 0) ));
VERIFY(pDC->FillRgn( &rgnA, &brA)); // rgnA Red Filled
VERIFY(brB.CreateSolidBrush( RGB(0, 255, 0) ));
VERIFY(pDC->FillRgn( &rgnB, &brB)); // rgnB Green Filled
VERIFY(brC.CreateSolidBrush( RGB(0, 0, 255) )); // rgnC Blue
VERIFY(pDC->FrameRgn( &rgnC, &brC, 2, 2 ));
需求
Header: afxwin.h