Red de conocimiento informático - Material del sitio web - Cómo dibujar una imagen circular usando vc++

Cómo dibujar una imagen circular usando vc++

Para dibujar un círculo en VC++, puede usar la función API: Ellipse (int ?x1, int y1, int x2, int y2);

El principio de dibujar un círculo es el círculo inscrito de un rectángulo, los dos primeros de los cuatro parámetros son las coordenadas de la esquina superior izquierda del rectángulo y los dos últimos son las coordenadas de la esquina inferior derecha del rectángulo. Antes de que VC++ pueda dibujar gráficos, primero debe tener un DC de lienzo, que es el contexto del dispositivo. El siguiente ejemplo: void?CrrDlg::PaintCircle()//Función para dibujar un círculo sólido

{

CDC?*pDC?=?this->GetDC();?/ / Get DC

CBrush?brush,*oldbrush;//Brush

//Al incrementar num en el temporizador, aparecen círculos rojos y círculos verdes alternativamente, es decir, luces parpadeantes Fenómeno

si?(num%2){//num es el parámetro de conteo del temporizador, dibuja un círculo rojo cuando sea un número par

brush.CreateSolidBrush(RGB(255,0 , 0));

}

else{?//Cuando num es un número impar, dibuja un círculo verde

brush.CreateSolidBrush(RGB(0,255 ,0) );

}

oldbrush=pDC->SelectObject(&brush);

pDC->Ellipse(10,10,100,100);

pDC->Elipse(110,10,200,100);

pDC->SelectObject(oldbrush);

ReleaseDC(pDC);

}

void?CrrDlg::OnTimer(UINT_PTR?nIDEvent)?//Temporizador

{

num++;

PaintCircle();

CDialogEx::OnTimer(nIDEvent);

}

Para dibujar un círculo hueco, necesitas usar el pincel CPen y el método de pintura es el mismo. .