CustomLineCap Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Incapsula un limite di riga personalizzato definito dall'utente.
public ref class CustomLineCap : MarshalByRefObject, ICloneable, IDisposable
public class CustomLineCap : MarshalByRefObject, ICloneable, IDisposable
type CustomLineCap = class
inherit MarshalByRefObject
interface ICloneable
interface IDisposable
Public Class CustomLineCap
Inherits MarshalByRefObject
Implements ICloneable, IDisposable
- Ereditarietà
- Derivato
- Implementazioni
Esempio
Nell'esempio seguente viene illustrato come usare la CustomLineCap classe . Per eseguire questo esempio incollare il codice in un modulo Windows. Gestire l'evento del Paint modulo e chiamare DrawCaps dal metodo di gestione degli eventi del Paint modulo, passando e come PaintEventArgs.
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);
}
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
Commenti
Le estremità di linea vengono utilizzate all'inizio e alle estremità di linee o curve disegnate da oggetti GDI+ Pen . GDI+ supporta diversi stili di estremità predefiniti e consente anche agli utenti di definire i propri stili di estremità. Questa classe viene usata per creare stili di estremità personalizzati.
Annotazioni
In .NET 6 e versioni successive il pacchetto System.Drawing.Common, che include questo tipo, è supportato solo nei sistemi operativi Windows. L'uso di questo tipo nelle app multipiattaforma causa avvisi in fase di compilazione ed eccezioni in fase di esecuzione. Per altre informazioni, vedere System.Drawing.Common supportato solo in Windows.
Costruttori
| Nome | Descrizione |
|---|---|
| CustomLineCap(GraphicsPath, GraphicsPath, LineCap, Single) |
Inizializza una nuova istanza della CustomLineCap classe dall'enumerazione esistente specificata LineCap con la struttura, il riempimento e l'inset specificati. |
| CustomLineCap(GraphicsPath, GraphicsPath, LineCap) |
Inizializza una nuova istanza della CustomLineCap classe dall'enumerazione esistente LineCap specificata con il contorno e il riempimento specificati. |
| CustomLineCap(GraphicsPath, GraphicsPath) |
Inizializza una nuova istanza della CustomLineCap classe con il contorno e il riempimento specificati. |
Proprietà
| Nome | Descrizione |
|---|---|
| BaseCap |
Ottiene o imposta l'enumerazione su cui si basa l'oggetto LineCapCustomLineCap . |
| BaseInset |
Ottiene o imposta la distanza tra il limite e la linea. |
| StrokeJoin |
Ottiene o imposta l'enumerazione LineJoin che determina il modo in cui le righe che compongono questo CustomLineCap oggetto vengono unite in join. |
| WidthScale |
Ottiene o imposta la quantità in base alla quale ridimensionare l'oggetto CustomLineCap Class rispetto alla larghezza dell'oggetto Pen . |
Metodi
| Nome | Descrizione |
|---|---|
| Clone() |
Crea una copia esatta di questo CustomLineCapoggetto . |
| CreateObjRef(Type) |
Crea un oggetto che contiene tutte le informazioni pertinenti necessarie per generare un proxy utilizzato per comunicare con un oggetto remoto. (Ereditato da MarshalByRefObject) |
| Dispose() |
Rilascia tutte le risorse usate da questo CustomLineCap oggetto. |
| Dispose(Boolean) |
Rilascia le risorse non gestite usate da CustomLineCap e, facoltativamente, rilascia le risorse gestite. |
| Equals(Object) |
Determina se l'oggetto specificato è uguale all'oggetto corrente. (Ereditato da Object) |
| Finalize() |
Consente di tentare CustomLineCap di liberare risorse ed eseguire altre operazioni di pulizia prima che venga CustomLineCap recuperato da Garbage Collection. |
| GetHashCode() |
Funge da funzione hash predefinita. (Ereditato da Object) |
| GetLifetimeService() |
Recupera l'oggetto servizio di durata corrente che controlla i criteri di durata per questa istanza. (Ereditato da MarshalByRefObject) |
| GetStrokeCaps(LineCap, LineCap) |
Ottiene i maiuscole utilizzati per iniziare e terminare le righe che costituiscono questo limite personalizzato. |
| GetType() |
Ottiene il Type dell'istanza corrente. (Ereditato da Object) |
| InitializeLifetimeService() |
Ottiene un oggetto servizio di durata per controllare i criteri di durata per questa istanza. (Ereditato da MarshalByRefObject) |
| MemberwiseClone() |
Crea una copia superficiale del Objectcorrente. (Ereditato da Object) |
| MemberwiseClone(Boolean) |
Crea una copia superficiale dell'oggetto corrente MarshalByRefObject . (Ereditato da MarshalByRefObject) |
| SetStrokeCaps(LineCap, LineCap) |
Imposta le estremità utilizzate per iniziare e terminare le righe che costituiscono questo limite personalizzato. |
| ToString() |
Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object) |