Cree un proyecto MFC para dibujar puntos en la pantalla. Haga doble clic con el mouse para dibujar un punto en la posición en la que se hizo doble clic. Puede especificar el tamaño, la forma y el color del punto usted mismo.
He leído esta pregunta muchas veces y no puedo evitar querer decir algunas palabras.
Usted mismo puede encapsular una función SetPixel. Como sabe, la función es establecer un píxel y los píxeles son relativamente pequeños. Por supuesto, esta no es una buena declaración. Puede expandir la forma del punto usted mismo. Puede usar la posición actual del mouse en píxeles, luego usar ese punto como punto de referencia y luego establecer algunos píxeles a su alrededor para lograr diferentes formas. En cuanto al color, es aún más sencillo.
Programación Ruiteng, Red
void MySetPixel(CDC *dc, CPoint point, COLORREF crColor)
{
// Cross Star punto rojo
dc->SetPixel(point.x-1, point.y, crColor);
dc->SetPixel(point.x+1, point.y, crColor );
dc->SetPixel(punto.x, punto.y, crColor);
dc->SetPixel(punto.x, punto.y-1, crColor );
dc->SetPixel(point.x, point.y+1, crColor);
}
void CColorDlg::OnLButtonDown(UINT nFlags , CPoint punto)
{
// TODO: Agregue su código de controlador de mensajes aquí y/o llame al CDC predeterminado
*dc= this->GetDC( );
MySetPixel(dc, punto, RGB(255, 0, 0));
CDialog::OnLButtonDown(nFlags, punto);
} p>