Partilhar via


CDC::RoundRect

Desenha um retângulo com cantos arredondados usando a caneta corrente.

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

Parâmetros

  • x1
    Especifica a coordenada x do canto superior esquerdo do retângulo (em unidades lógicas).

  • y1
    Especifica a coordenada y do canto superior esquerdo do retângulo (em unidades lógicas).

  • x2
    Especifica a coordenada x do canto inferior direito do retângulo (em unidades lógicas).

  • y2
    Especifica a coordenada y do canto inferior direito do retângulo (em unidades lógicas).

  • x 3
    Especifica a largura da elipse usada para desenhar os cantos arredondados (em unidades lógicas).

  • y3
    Especifica a altura da elipse usada para desenhar os cantos arredondados (em unidades lógicas).

  • lpRect
    Especifica o limite de retângulo em unidades lógicas.Você pode passar em um CRect objeto ou um ponteiro para um RECT estrutura para este parâmetro.

  • point
    A coordenada x do point Especifica a largura da elipse para desenhar os cantos arredondados (em unidades lógicas). A coordenada y do point Especifica a altura da elipse para desenhar os cantos arredondados (em unidades lógicas). Você pode passar em um PONTO estrutura ou um CPoint objeto para esse parâmetro.

Valor de retorno

Diferente de zero se a função for bem-sucedida; caso contrário, 0.

Comentários

O interior do retângulo é preenchido usando o pincel corrente.

A figura que essa função desenha se estende até, mas não inclui as coordenadas direita e inferior.Isso significa que a altura da figura é y2 – y1 e é a largura da Figura x2 – x1. A altura e a largura do retângulo delimitador devem ser maior que 2 unidades e unidades menores que 32.767.

Exemplo

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);
}

Requisitos

Cabeçalho: afxwin.h

Consulte também

Referência

Classe CDC

Gráfico de hierarquia

CDC::retângulo

RoundRect

Classe CRect

RECT estrutura

Estrutura de ponto

Classe CPoint

Outros recursos

Membros do CDC