Freigeben über


Stifte, Linien und Rechtecke

Zum Zeichnen von Linien mit Windows GDI+ müssen Sie ein Graphics-Objekt und ein Pen--Objekt erstellen. Das Graphics-Objekt stellt die Methoden bereit, die die Zeichnung tatsächlich ausführen, und das Pen--Objekt speichert Attribute der Linie, z. B. Farbe, Breite und Formatvorlage. Das Zeichnen einer Linie ist einfach eine Frage des Aufrufens der DrawLine- Methode des Graphics-Objekts. Die Adresse des Pen--Objekts wird als eines der Argumente an die DrawLine-Methode übergeben. Das folgende Beispiel zeichnet eine Linie vom Punkt (4, 2) bis zum Punkt (12, 6).

myGraphics.DrawLine(&myPen, 4, 2, 12, 6);

DrawLine- ist eine überladene Methode der klasse Graphics, sodass Sie sie mit Argumenten bereitstellen können. Sie können beispielsweise zwei Point-Objekte erstellen und Verweise auf die Point--Objekte als Argumente an die DrawLine-Methode übergeben.

Point myStartPoint(4, 2);
Point myEndPoint(12, 6);
myGraphics.DrawLine(&myPen, myStartPoint, myEndPoint);

Sie können bestimmte Attribute angeben, wenn Sie ein Pen--Objekt erstellen. Mit einem Stift--Konstruktor können Sie beispielsweise Farbe und Breite angeben. Das folgende Beispiel zeichnet eine blaue Linie der Breite 2 von (0, 0) bis (60, 30).

Pen myPen(Color(255, 0, 0, 255), 2);
myGraphics.DrawLine(&myPen, 0, 0, 60, 30);

Das Pen--Objekt verfügt auch über Attribute wie das Strichformat, mit denen Sie Features der Linie angeben können. Das folgende Beispiel zeichnet beispielsweise eine gestrichelte Linie von (100, 50) bis (300, 80).

myPen.SetDashStyle(DashStyleDash);
myGraphics.DrawLine(&myPen, 100, 50, 300, 80);

Sie können verschiedene Methoden des Pen--Objekts verwenden, um viele weitere Attribute der Linie festzulegen. Die Pen::SetStartCap und Pen::SetEndCap Methoden geben die Darstellung der Enden der Linie an; Die Enden können flach, quadratisch, abgerundet, dreieckig oder benutzerdefinierte Formen sein. Mit der Pen::SetLineJoin-Methode können Sie angeben, ob verbundene Linien gemildert (mit scharfen Ecken verbunden), abgeschrägt, gerundet oder beschnitten werden. Die folgende Abbildung zeigt Linien mit verschiedenen Kappen- und Verknüpfungsformaten.

Abbildung einer zwei Linien mit abgerundeten und kreisförmigen Enden, abgerundeten und gemilbenen Ecken und zwei Pfeilarten

Das Zeichnen von Rechtecke mit GDI+ ähnelt dem Zeichnen von Linien. Zum Zeichnen eines Rechtecks benötigen Sie ein Graphics-Objekt und ein Pen--Objekt. Das Graphics-Objekt stellt eine DrawRectangle--Methode bereit, und das Pen--Objekt speichert Attribute, z. B. Linienbreite und Farbe. Die Adresse des Pen--Objekts wird als eines der Argumente an die DrawRectangle-Methode übergeben. Im folgenden Beispiel wird ein Rechteck mit der oberen linken Ecke (100, 50), einer Breite von 80 und einer Höhe von 40 ziehe.

myGraphics.DrawRectangle(&myPen, 100, 50, 80, 40);

DrawRectangle ist eine überladene Methode der klasse Graphics, sodass Es verschiedene Möglichkeiten gibt, wie Sie es mit Argumenten bereitstellen können. Sie können beispielsweise ein Rect-Objekt erstellen und einen Verweis auf das Rect-Objekt als Argument an die DrawRectangle-Methode übergeben.

Rect myRect(100, 50, 80, 40);
myGraphics.DrawRectangle(&myPen, myRect);

Ein Rect-Objekt verfügt über Methoden zum Bearbeiten und Sammeln von Informationen zum Rechteck. Beispielsweise ändern die methoden "Inflate" und Offset die Größe und Position des Rechtecks. Die Rect::IntersectsWith-Methode teilt Ihnen mit, ob das Rechteck ein anderes angegebenes Rechteck überschneidet, und die Contains-Methode informiert Sie, ob sich ein bestimmter Punkt innerhalb des Rechtecks befindet.