Gewusst wie: Erstellen von Graphics-Objekten zum ZeichnenHow to: Create Graphics Objects for Drawing

Bevor Sie Linien und Formen zeichnen können, Rendern von Text oder anzeigen und Bearbeiten von Bildern mit GDI+GDI+, müssen Sie erstellen eine Graphics Objekt.Before you can draw lines and shapes, render text, or display and manipulate images with GDI+GDI+, you need to create a Graphics object. Die Graphics -Objekt stellt eine GDI+GDI+ Zeichenoberfläche und ist das Objekt, das zum Erstellen von Grafiken verwendet wird.The Graphics object represents a GDI+GDI+ drawing surface, and is the object that is used to create graphical images.

Es gibt zwei Schritte bei der Arbeit mit Grafiken:There are two steps in working with graphics:

  1. Erstellen einer Graphics Objekt.Creating a Graphics object.

  2. Mithilfe der Graphics Objekt, das Zeichnen von Linien und Formen, Rendern von Text oder anzeigen und Bearbeiten von Bildern.Using the Graphics object to draw lines and shapes, render text, or display and manipulate images.

Erstellen ein GrafikobjektCreating a Graphics Object

Ein Grafikobjekt kann auf verschiedene Arten erstellt werden.A graphics object can be created in a variety of ways.

Um ein Graphics-Objekt zu erstellen.To create a graphics object

  • Erhalten Sie einen Verweis auf ein Graphics-Objekt als Teil der PaintEventArgs in die Paint Ereignis eines Formulars oder Steuerelements.Receive a reference to a graphics object as part of the PaintEventArgs in the Paint event of a form or control. Dies ist in der Regel an, wie Sie einen Verweis auf ein Graphics-Objekt abrufen, beim von Zeichnungscode für ein Steuerelement zu erstellen.This is usually how you obtain a reference to a graphics object when creating painting code for a control. Auf ähnliche Weise können Sie ein Grafikobjekt auch abrufen, als Eigenschaft der PrintPageEventArgs bei der Verarbeitung der PrintPage -Ereignis für eine PrintDocument.Similarly, you can also obtain a graphics object as a property of the PrintPageEventArgs when handling the PrintPage event for a PrintDocument.

    - oder - -or-

  • Rufen Sie die CreateGraphics Methode des Steuerelements oder Formulars zum Abrufen eines Verweises auf eine Graphics Objekt, das die Zeichenoberfläche des betreffenden Steuerelements oder Formulars darstellt.Call the CreateGraphics method of a control or form to obtain a reference to a Graphics object that represents the drawing surface of that control or form. Verwenden Sie diese Methode, wenn Sie auf einem Formular oder Steuerelement, das bereits zeichnen möchten.Use this method if you want to draw on a form or control that already exists.

    - oder - -or-

  • Erstellen Sie eine Graphics Objekt aus einem beliebigen Objekt, das von erbt Image.Create a Graphics object from any object that inherits from Image. Dieser Ansatz ist hilfreich, wenn Sie ein bereits vorhandenes Bild ändern möchten.This approach is useful when you want to alter an already existing image.

    Die folgenden Abschnitte enthalten Details zu jeder dieser Prozesse.The following sections give details about each of these processes.

PaintEventArgs in Paint-EreignishandlerPaintEventArgs in the Paint Event Handler

Bei der Programmierung der PaintEventHandler für Steuerelemente oder PrintPage für eine PrintDocument, ein Graphics-Objekt dient als eine der Eigenschaften von PaintEventArgs oder PrintPageEventArgs.When programming the PaintEventHandler for controls or the PrintPage for a PrintDocument, a graphics object is provided as one of the properties of PaintEventArgs or PrintPageEventArgs.

Um einen Verweis auf ein Grafikobjekt aus den PaintEventArgs im Paint-Ereignis zu erhalten.To obtain a reference to a Graphics object from the PaintEventArgs in the Paint event

  1. Deklarieren Sie die Graphics Objekt.Declare the Graphics object.

  2. Weisen Sie die Variable zum Verweisen auf die Graphics -Objekt übergeben, als Teil der PaintEventArgs.Assign the variable to refer to the Graphics object passed as part of the PaintEventArgs.

  3. Fügen Sie Code, um das Formular oder Steuerelement zu zeichnen.Insert code to paint the form or control.

    Das folgende Beispiel zeigt, wie Sie verweisen auf eine Graphics -Objekt aus der PaintEventArgs in die Paint Ereignis:The following example shows how to reference a Graphics object from the PaintEventArgs in the Paint event:

    Private Sub Form1_Paint(sender As Object, pe As PaintEventArgs) Handles _  
       MyBase.Paint  
       ' Declares the Graphics object and sets it to the Graphics object  
       ' supplied in the PaintEventArgs.  
       Dim g As Graphics = pe.Graphics  
       ' Insert code to paint the form here.  
    End Sub  
    
    private void Form1_Paint(object sender,   
       System.Windows.Forms.PaintEventArgs pe)   
    {  
       // Declares the Graphics object and sets it to the Graphics object  
       // supplied in the PaintEventArgs.  
       Graphics g = pe.Graphics;  
       // Insert code to paint the form here.  
    }  
    
    private:  
       void Form1_Paint(System::Object ^ sender,  
          System::Windows::Forms::PaintEventArgs ^ pe)  
       {  
          // Declares the Graphics object and sets it to the Graphics object  
          // supplied in the PaintEventArgs.  
          Graphics ^ g = pe->Graphics;  
          // Insert code to paint the form here.  
       }  
    

CreateGraphics-MethodeCreateGraphics Method

Können Sie auch die CreateGraphics Methode des Steuerelements oder Formulars zum Abrufen eines Verweises auf eine Graphics Objekt, das die Zeichenoberfläche des betreffenden Steuerelements oder Formulars darstellt.You can also use the CreateGraphics method of a control or form to obtain a reference to a Graphics object that represents the drawing surface of that control or form.

Erstellen Sie ein Graphics-Objekt mit der CreateGraphics-MethodeTo create a Graphics object with the CreateGraphics method

  • Rufen Sie die CreateGraphics -Methode der das Formular oder Steuerelement, von denen Sie Grafiken zu rendern möchten.Call the CreateGraphics method of the form or control upon which you want to render graphics.

    Dim g as Graphics  
    ' Sets g to a Graphics object representing the drawing surface of the  
    ' control or form g is a member of.  
    g = Me.CreateGraphics  
    
    Graphics g;  
    // Sets g to a graphics object representing the drawing surface of the  
    // control or form g is a member of.  
    g = this.CreateGraphics();  
    
    Graphics ^ g;  
    // Sets g to a graphics object representing the drawing surface of the  
    // control or form g is a member of.  
    g = this->CreateGraphics();  
    

Erstellen Sie aus einem Image-ObjektCreate from an Image Object

Darüber hinaus können Sie ein Grafikobjekt erstellen, von der jedes Objekt, das von abgeleitet ist die Image Klasse.Additionally, you can create a graphics object from any object that derives from the Image class.

Um ein Grafikobjekt aus einem Image erstellenTo create a Graphics object from an Image

  • Rufen Sie die Graphics.FromImage Methode, und geben den Namen des Image-Variablen aus der Sie erstellen möchten eine Graphics Objekt.Call the Graphics.FromImage method, supplying the name of the Image variable from which you want to create a Graphics object.

    Das folgende Beispiel zeigt, wie Sie mit einem Bitmap Objekt:The following example shows how to use a Bitmap object:

    Dim myBitmap as New Bitmap("C:\Documents and Settings\Joe\Pics\myPic.bmp")  
    Dim g as Graphics = Graphics.FromImage(myBitmap)  
    
    Bitmap myBitmap = new Bitmap(@"C:\Documents and   
       Settings\Joe\Pics\myPic.bmp");  
    Graphics g = Graphics.FromImage(myBitmap);  
    
    Bitmap ^ myBitmap = gcnew  
       Bitmap("D:\\Documents and Settings\\Joe\\Pics\\myPic.bmp");  
    Graphics ^ g = Graphics::FromImage(myBitmap);  
    

Hinweis

Sie können nur erstellen Graphics Objekte aus einer nicht indizierten BMP-Dateien, z. B. 16-Bit-24-Bit und 32-Bit-BMP-Dateien.You can only create Graphics objects from nonindexed .bmp files, such as 16-bit, 24-bit, and 32-bit .bmp files. Jedes Pixel, der nicht indizierten BMP-Dateien enthält, eine Farbe, im Gegensatz zu Pixel des indizierten BMP-Dateien, die einen Index zu einer Farbtabelle enthalten.Each pixel of nonindexed .bmp files holds a color, in contrast to pixels of indexed .bmp files, which hold an index to a color table.

Zeichnen und Bearbeiten von Formen und BilderDrawing and Manipulating Shapes and Images

Nachdem dieser erstellt wurde, eine Graphics -Objekt zum Zeichnen von Linien und Formen, Rendern von Text oder anzeigen und Bearbeiten von Bildern verwendet werden kann.After it is created, a Graphics object may be used to draw lines and shapes, render text, or display and manipulate images. Die principal-Objekten, mit denen, die Graphics Objekt sind:The principal objects that are used with the Graphics object are:

  • Die Pen Klasse – zum Zeichnen von Linien, Formen oder Rendern geometrische anderen Darstellungen bereit.The Pen class—Used for drawing lines, outlining shapes, or rendering other geometric representations.

  • Die Brush Klasse, für das Ausfüllen von Grafiken, z. B. gefüllte Formen, Bildern oder Text verwendet.The Brush class—Used for filling areas of graphics, such as filled shapes, images, or text.

  • Die Font Klasse – enthält eine Beschreibung der Formen, die zur Verwendung beim Rendern von Text.The Font class—Provides a description of what shapes to use when rendering text.

  • Die Color Struktur – stellt die verschiedenen Farben angezeigt.The Color structure—Represents the different colors to display.

Das Graphics-Objekt verwenden, die, das Sie erstellt habenTo use the Graphics object you have created

Siehe auchSee Also

Erste Schritte mit GrafikprogrammierungGetting Started with Graphics Programming
Grafik und Zeichnen in Windows FormsGraphics and Drawing in Windows Forms
Linien, Kurven und FormenLines, Curves, and Shapes
Gewusst wie: Darstellen von Bildern mit GDI+How to: Render Images with GDI+