Rechteck in VC++ zeichnen?

Hallo zusammen,

ich habe bei meinen ersten Schritten in VC++ ein kleines Programm in MFC geschrieben. Gerne würde ich in dort ein Rechteck zeichnen. Wie ist das am einfachsten möglich? Danke für die Hilfe.

Gruß Michael

Hi Michael,

wenn Du ein Standard-Projekt mit dem Anwendungs-Assistenten angelegt hast, ex. eine ViewKlasse (hier CMyView). In der musst Du die OnDraw-Methode überschreiben, der Methoden-Rahmen ist i.d.R. schon generiert. Ein Recteck zeichnet man dann wie folgt (alle Zeichen-Operationen werden mittels des CDC-Zeigers ausgeführt, CDC == class DeviceContext):

void CMyView::open\_mouth:nDraw(CDC\* pDC)
{
 CMyDoc\* pDoc = GetDocument();
 ASSERT\_VALID(pDoc);
 // ZU ERLEDIGEN: Hier Code zum Zeichnen der
 // ursprünglichen Daten hinzufügen

 CRect rect;
 GetClientRect(&rect); // client-rect ermitteln

 CPen pen(PS\_SOLID, // durchgezogene Linie
 2, // linienDicke = 2
 RGB(255,0,0)); // Farbe = rot

 CPen\* pOldPen = pDC-\>SelectObject(&pen); // Stift auswählen

 rect.DeflateRect(10,10,10,10); // rect kleiner machen

 pDC-\>Rectangle(&rect); // rect zeichen mit ausg. Stift

 pDC-\>SelectObject(pOldPen); // alten Stift wieder ausw.
}

Gruss Rolf