gepunktete Linie zeichnen
-
Hallo!
Ich möchte eine Linie aus Punkten in ein farbiges Rechteck zeichnen, welches ich vorher mit Rectangle gezeichnet habe. Die Pixel zwischen den Punkten werden mit der Farbe des Fensters gezeichnet in dem sich das Rechteck befindet, anstatt mit der Farbe des Rechtecks.
Hat jemand eine Idee, wie ich den u.a. Code so ändern kann, dass die Pixel zwischen den Punkten in der Farbe des Rechtecks gezeichnet werden?
[cpp] //Call DrawLine m_pChartElements->DrawLine( A, B, BLACK, 1, PS_DOT); ///////////////////////// //Draw a line from one point(=PointA) to another(=PointB) with a selected color //(=IColor), width (=iWidth) and style (=iStyle). void CChartElements::DrawLine(POINT PointA, POINT PointB, int iColor/*=BLACK*/, int iWidth/*=1*/, int iStyle/*=PS_SOLID*/) { CPen lPen(iStyle, iWidth, m_crColors[iColor]); m_pDC->SelectObject(&lPen); m_pDC->MoveTo(PointA); m_pDC->LineTo(PointB); } [/cpp]Mit besten Grüßen, Lothar.
-
Hallo!
Damit Punktlinien wie o.a. gezeichnet werden, muss die Methode DrawLine folgendermaßen verändert werden:
void CChartElements::DrawLine(POINT PointA, POINT PointB, int iColor/*=BLACK*/, int iWidth/*=1*/, int iStyle/*=PS_SOLID*/) { CPen lPen(iStyle, iWidth, m_crColors[iColor]); m_pDC->SelectObject(&lPen); m_pDC->SetBkMode(TRANSPARENT); //<----Änderung m_pDC->MoveTo(PointA); m_pDC->LineTo(PointB); }Mit besten Grüßen, Lothar.