CustomLineCap-Klasse
Kapselt ein benutzerdefiniertes Linienende ein.
Namespace: System.Drawing.Drawing2D
Assembly: System.Drawing (in system.drawing.dll)
Syntax
'Declaration
Public Class CustomLineCap
Inherits MarshalByRefObject
Implements ICloneable, IDisposable
'Usage
Dim instance As CustomLineCap
public class CustomLineCap : MarshalByRefObject, ICloneable, IDisposable
public ref class CustomLineCap : public MarshalByRefObject, ICloneable, IDisposable
public class CustomLineCap extends MarshalByRefObject implements ICloneable, IDisposable
public class CustomLineCap extends MarshalByRefObject implements ICloneable, IDisposable
Hinweise
Linienenden werden am Anfang und am Ende von Linien oder Kurven verwendet, die von GDI+-Pen-Objekten gezeichnet werden. GDI+ unterstützt mehrere vordefinierte Endenformate und ermöglicht es dem Benutzer außerdem, eigene Endenformate zu definieren. Diese Klasse wird verwendet, um benutzerdefinierte Endenformate zu erstellen.
Beispiel
Im folgenden Beispiel wird die Verwendung der CustomLineCap-Klasse veranschaulicht. Fügen Sie den Code in ein Windows Form ein, um das Beispiel auszuführen. Behandeln Sie das Paint-Ereignis des Formulars, und rufen Sie DrawCaps
in der Paint-Ereignisbehandlungsmethode auf, wobei Sie e als PaintEventArgs übergeben.
Protected Sub DrawCaps(ByVal e As PaintEventArgs)
Dim hPath As New GraphicsPath()
' Create the outline for our custom end cap.
hPath.AddLine(New Point(0, 0), New Point(0, 5))
hPath.AddLine(New Point(0, 5), New Point(5, 1))
hPath.AddLine(New Point(5, 1), New Point(3, 1))
' Construct the hook-shaped end cap.
Dim HookCap As New CustomLineCap(Nothing, hPath)
' Set the start cap and end cap of the HookCap to be rounded.
HookCap.SetStrokeCaps(LineCap.Round, LineCap.Round)
' Create a pen and set end custom start and end
' caps to the hook cap.
Dim customCapPen As New Pen(Color.Black, 5)
customCapPen.CustomStartCap = HookCap
customCapPen.CustomEndCap = HookCap
' Create a second pen using the start and end caps from
' the hook cap.
Dim capPen As New Pen(Color.Red, 10)
Dim startCap As LineCap
Dim endCap As LineCap
HookCap.GetStrokeCaps(startCap, endCap)
capPen.StartCap = startCap
capPen.EndCap = endCap
' Create a line to draw.
Dim points As Point() = {New Point(100, 100), New Point(200, 50), _
New Point(250, 300)}
' Draw the lines.
e.Graphics.DrawLines(capPen, points)
e.Graphics.DrawLines(customCapPen, points)
End Sub
protected void DrawCaps(PaintEventArgs e)
{
GraphicsPath hPath = new GraphicsPath();
// Create the outline for our custom end cap.
hPath.AddLine(new Point(0, 0), new Point(0, 5));
hPath.AddLine(new Point(0, 5), new Point(5, 1));
hPath.AddLine(new Point(5, 1), new Point(3, 1));
// Construct the hook-shaped end cap.
CustomLineCap HookCap = new CustomLineCap(null, hPath);
// Set the start cap and end cap of the HookCap to be rounded.
HookCap.SetStrokeCaps(LineCap.Round, LineCap.Round);
// Create a pen and set end custom start and end
// caps to the hook cap.
Pen customCapPen = new Pen(Color.Black, 5);
customCapPen.CustomStartCap = HookCap;
customCapPen.CustomEndCap = HookCap;
// Create a second pen using the start and end caps from
// the hook cap.
Pen capPen = new Pen(Color.Red, 10);
LineCap startCap;
LineCap endCap;
HookCap.GetStrokeCaps(out startCap, out endCap);
capPen.StartCap = startCap;
capPen.EndCap = endCap;
// Create a line to draw.
Point[] points = { new Point(100, 100), new Point(200, 50),
new Point(250, 300) };
// Draw the lines.
e.Graphics.DrawLines(capPen, points);
e.Graphics.DrawLines(customCapPen, points);
}
Vererbungshierarchie
System.Object
System.MarshalByRefObject
System.Drawing.Drawing2D.CustomLineCap
System.Drawing.Drawing2D.AdjustableArrowCap
Threadsicherheit
Alle öffentlichen statischen (Shared in Visual Basic) Member dieses Typs sind threadsicher. Bei Instanzmembern ist die Threadsicherheit nicht gewährleistet.
Plattformen
Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.
Versionsinformationen
.NET Framework
Unterstützt in: 2.0, 1.1, 1.0