Freigeben über


Pen.Dispose-Methode

Gibt alle von diesem Pen verwendeten Ressourcen frei.

Namespace: System.Drawing
Assembly: System.Drawing (in system.drawing.dll)

Syntax

'Declaration
Public Sub Dispose
'Usage
Dim instance As Pen

instance.Dispose
public void Dispose ()
public:
virtual void Dispose () sealed
public final void Dispose ()
public final function Dispose ()

Hinweise

Durch einen Aufruf von Dispose können die von diesem Brush verwendeten Ressourcen für andere Zwecke neu reserviert werden.

Rufen Sie Dispose auf, wenn Pen nicht mehr benötigt wird. Die Dispose-Methode bewirkt, dass Pen nicht mehr verwendet werden kann. Nach dem Aufruf von Dispose müssen Sie alle Verweise auf Pen freigeben, sodass der vom Pen belegte Speicher bei der Garbage Collection wieder zugänglich gemacht werden kann. Weitere Informationen finden Sie unter Bereinigen von nicht verwalteten Ressourcen und Implementieren einer Dispose-Methode.

Hinweis

Rufen Sie immer Dispose auf, bevor Sie den letzten Verweis auf den Pen freigeben. Andernfalls bleiben die verwendeten Ressourcen reserviert, bis die Garbage Collection die Finalize-Methode des Pen-Objekts aufruft.

Beispiel

Im folgenden Codebeispiel werden die Auswirkungen des Festlegens der Width-Eigenschaft und der LineJoin-Eigenschaft sowie das Aufrufen der Dispose-Methode für einen Pen veranschaulicht.

Dieses Beispiel ist für die Verwendung mit Windows Forms vorgesehen. Fügen Sie den Code in ein Formular ein, und rufen Sie beim Behandeln des Paint-Ereignisses des Formulars die ShowLineJoin-Methode auf, wobei Sie e als PaintEventArgs übergeben.

Private Sub ShowLineJoin(ByVal e As PaintEventArgs)

    ' Create a new pen.
    Dim skyBluePen As New Pen(Brushes.DeepSkyBlue)

    ' Set the pen's width.
    skyBluePen.Width = 8.0F

    ' Set the LineJoin property.
    skyBluePen.LineJoin = Drawing2D.LineJoin.Bevel

    ' Draw a rectangle.
    e.Graphics.DrawRectangle(skyBluePen, _
        New Rectangle(40, 40, 150, 200))

    'Dispose of the pen.
    skyBluePen.Dispose()

End Sub
private void ShowLineJoin(PaintEventArgs e)
{

    // Create a new pen.
    Pen skyBluePen = new Pen(Brushes.DeepSkyBlue);

    // Set the pen's width.
    skyBluePen.Width = 8.0F;

    // Set the LineJoin property.
    skyBluePen.LineJoin = System.Drawing.Drawing2D.LineJoin.Bevel;

    // Draw a rectangle.
    e.Graphics.DrawRectangle(skyBluePen, 
        new Rectangle(40, 40, 150, 200));

    //Dispose of the pen.
    skyBluePen.Dispose();

}
private:
   void ShowLineJoin( PaintEventArgs^ e )
   {
      // Create a new pen.
      Pen^ skyBluePen = gcnew Pen( Brushes::DeepSkyBlue );

      // Set the pen's width.
      skyBluePen->Width = 8.0F;

      // Set the LineJoin property.
      skyBluePen->LineJoin = System::Drawing::Drawing2D::LineJoin::Bevel;

      // Draw a rectangle.
      e->Graphics->DrawRectangle( skyBluePen, Rectangle(40,40,150,200) );

      //Dispose of the pen.
      delete skyBluePen;
   }
private void ShowLineJoin(PaintEventArgs e)
{
    // Create a new pen.
    Pen skyBluePen = new Pen(Brushes.get_DeepSkyBlue());

    // Set the pen's width.
    skyBluePen.set_Width(8);

    // Set the LineJoin property.
    skyBluePen.set_LineJoin(System.Drawing.Drawing2D.LineJoin.Bevel);

    // Draw a rectangle.
    e.get_Graphics().DrawRectangle(skyBluePen, 
        new Rectangle(40, 40, 150, 200));

    //Dispose of the pen.
    skyBluePen.Dispose();
} //ShowLineJoin

Plattformen

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile für Pocket PC, Windows Mobile für Smartphone, 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

.NET Compact Framework

Unterstützt in: 2.0, 1.0

Siehe auch

Referenz

Pen-Klasse
Pen-Member
System.Drawing-Namespace