Zeichnen einer benutzerdefinierten Strichlinie

Windows GDI+ stellt mehrere Strichformatvorlagen bereit, die in der DashStyle-Enumeration aufgeführt sind. Wenn diese Standardstrichformatvorlagen nicht ihren Anforderungen entsprechen, können Sie ein benutzerdefiniertes Strichmuster erstellen.

Um eine benutzerdefinierte Strichzeile zu zeichnen, fügen Sie die Längen der Striche und Leerzeichen in ein Array ein, und übergeben Sie die Adresse des Arrays als Argument an die Pen ::SetDashPattern-Methode eines Pen-Objekts . Im folgenden Beispiel wird eine benutzerdefinierte Strichzeile basierend auf dem Array {5, 2, 15, 4} bezieht. Wenn Sie die Elemente des Arrays durch die Stiftbreite von 5 multiplizieren, erhalten Sie {25, 10, 75, 20}. Die angezeigten Striche wechseln zwischen 25 und 75 Länge und die Leerzeichen zwischen 10 und 20.

REAL dashValues[4] = {5, 2, 15, 4};
Pen blackPen(Color(255, 0, 0, 0), 5);
blackPen.SetDashPattern(dashValues, 4);
stat = graphics.DrawLine(&blackPen, Point(5, 5), Point(405, 5));

Die folgende Abbildung zeigt die resultierende gestrichelte Linie. Beachten Sie, dass der endgültige Strich kürzer als 25 Einheiten sein muss, damit die Linie bei (405, 5) enden kann.

illustration showing a dashed line; each segment is a short line followed by a long one