Condividi tramite


CDC::RoundRect

Consente di disegnare un rettangolo con angoli arrotondati utilizzando la penna corrente.

BOOL RoundRect( 
   int x1, 
   int y1, 
   int x2, 
   int y2, 
   int x3, 
   int y3  
); 
BOOL RoundRect( 
   LPCRECT lpRect,
   POINT point  
);

Parametri

  • x1
    Specifica la coordinata x dell'angolo superiore sinistro del rettangolo (in unità logiche).

  • y1
    Specifica la coordinata y dell'angolo superiore sinistro del rettangolo (in unità logiche).

  • x2
    Specifica la coordinata x l'angolo inferiore destro del rettangolo (in unità logiche).

  • y2
    Specifica la coordinata y l'angolo inferiore destro del rettangolo (in unità logiche).

  • x3
    Specifica la larghezza dell'ellisse utilizzata per disegnare gli angoli arrotondati (in unità logiche).

  • y3
    Specifica l'altezza dell'ellisse utilizzata per disegnare gli angoli arrotondati (in unità logiche).

  • lpRect
    Specifica il rettangolo di delimitazione in unità logiche. È possibile passare un oggetto CRect o un puntatore a una struttura RECT per questo parametro.

  • point
    Coordinata x point specifica la larghezza dell'ellisse per disegnare gli angoli arrotondati (in unità logiche). Coordinata y point specifica l'altezza dell'ellisse per disegnare gli angoli arrotondati (in unità logiche). È possibile passare una struttura di punti o un oggetto CPoint per questo parametro.

Valore restituito

Diverso da zero se la funzione ha esito positivo; in caso contrario 0.

Note

L'interno del rettangolo viene riempito con il pennello corrente.

Nella figura che questa funzione che estende fino a ma non le coordinate del basso e a destra. Ciò significa che l'altezza della figura è y2 – y1 e la larghezza della figura è x2 – x1. Sia l'altezza e la larghezza del rettangolo di delimitazione devono essere maggiori di 2 unità e meno di 32.767 unità.

Esempio

void CDCView::DrawRoundRect(CDC* pDC)
{
   // create and select a solid blue brush
   CBrush brushBlue(RGB(0, 0, 255));
   CBrush* pOldBrush = pDC->SelectObject(&brushBlue);

   // create and select a thick, black pen
   CPen penBlack;
   penBlack.CreatePen(PS_SOLID, 3, RGB(0, 0, 0));
   CPen* pOldPen = pDC->SelectObject(&penBlack);

   // get our client rectangle
   CRect rect;
   GetClientRect(rect);

   // shrink our rect 20 pixels in each direction
   rect.DeflateRect(20, 20);

   // Draw a thick black rectangle filled with blue 
   // corners rounded at a 17-unit radius. Note that 
   // a radius of three or less is not noticable because 
   // the pen is three units wide.
   pDC->RoundRect(rect, CPoint(17, 17));

   // put back the old objects
   pDC->SelectObject(pOldBrush);
   pDC->SelectObject(pOldPen);
}

Requisiti

Header: afxwin.h

Vedere anche

Riferimenti

Classe CDC

Grafico delle gerarchie

CDC::Rectangle

RoundRect

CRect Class

Struttura RECT

Struttura POINT

CPoint Class