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
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