Region.GetBounds(Graphics) Méthode

Définition

Obtient une structure RectangleF qui représente un rectangle qui lie cet objet Region sur la surface de dessin d'un objet Graphics.Gets a RectangleF structure that represents a rectangle that bounds this Region on the drawing surface of a Graphics object.

public:
 System::Drawing::RectangleF GetBounds(System::Drawing::Graphics ^ g);
public System.Drawing.RectangleF GetBounds (System.Drawing.Graphics g);
member this.GetBounds : System.Drawing.Graphics -> System.Drawing.RectangleF
Public Function GetBounds (g As Graphics) As RectangleF

Paramètres

g
Graphics

Graphics sur lequel cet objet Region est dessiné.The Graphics on which this Region is drawn.

Retours

RectangleF

Structure RectangleF qui représente un rectangle englobant pour cet objet Region sur la surface de dessin spécifiée.A RectangleF structure that represents the bounding rectangle for this Region on the specified drawing surface.

Exceptions

g a la valeur null.g is null.

Exemples

L’exemple de code suivant est conçu pour être utilisé avec Windows Forms, et il requiert PaintEventArgs e , qui est un paramètre du Paint Gestionnaire d’événements.The following code example is designed for use with Windows Forms, and it requires PaintEventArgse, which is a parameter of the Paint event handler. Le code effectue les actions suivantes :The code performs the following actions:

  • Crée un GraphicsPath et y ajoute une ellipse.Creates a GraphicsPath and adds an ellipse to it.

  • Remplit le tracé en bleu et le dessine à l’écran.Fills the path with blue and draws it to the screen.

  • Crée une région qui utilise GraphicsPath .Creates a region that uses the GraphicsPath.

  • Obtient la zone qui n’est pas exclue de la zone lorsqu’elle est combinée avec le deuxième rectangle.Gets the nonexcluded area of the region when combined with the second rectangle.

  • Obtient le rectangle englobant pour la zone et le dessine à l’écran en rouge.Gets the bounding rectangle for the region and draws it to the screen in red.

public:
   void GetBoundsExample( PaintEventArgs^ e )
   {
      // Create a GraphicsPath and add an ellipse to it.
      GraphicsPath^ myPath = gcnew GraphicsPath;
      Rectangle ellipseRect = Rectangle(20,20,100,100);
      myPath->AddEllipse( ellipseRect );

      // Fill the path with blue and draw it to the screen.
      SolidBrush^ myBrush = gcnew SolidBrush( Color::Blue );
      e->Graphics->FillPath( myBrush, myPath );

      // Create a region using the GraphicsPath.
      System::Drawing::Region^ myRegion = gcnew System::Drawing::Region( myPath );

      // Get the bounding rectangle for myRegion and draw it to the
      // screen in Red.
      RectangleF boundsRect = myRegion->GetBounds( e->Graphics );
      e->Graphics->DrawRectangle( Pens::Red, Rectangle::Round( boundsRect ) );
   }
public void GetBoundsExample(PaintEventArgs e)
{
             
    // Create a GraphicsPath and add an ellipse to it.
    GraphicsPath myPath = new GraphicsPath();
    Rectangle ellipseRect = new Rectangle(20, 20, 100, 100);
    myPath.AddEllipse(ellipseRect);
             
    // Fill the path with blue and draw it to the screen.
    SolidBrush myBrush = new SolidBrush(Color.Blue);
    e.Graphics.FillPath(myBrush, myPath);
             
    // Create a region using the GraphicsPath.
    Region myRegion = new Region(myPath);
             
    // Get the bounding rectangle for myRegion and draw it to the
             
    // screen in Red.
    RectangleF boundsRect = myRegion.GetBounds(e.Graphics);
    e.Graphics.DrawRectangle(Pens.Red, Rectangle.Round(boundsRect));
}
Public Sub GetBoundsExample(ByVal e As PaintEventArgs)

    ' Create a GraphicsPath and add an ellipse to it.
    Dim myPath As New GraphicsPath
    Dim ellipseRect As New Rectangle(20, 20, 100, 100)
    myPath.AddEllipse(ellipseRect)

    ' Fill the path with blue and draw it to the screen.
    Dim myBrush As New SolidBrush(Color.Blue)
    e.Graphics.FillPath(myBrush, myPath)

    ' Create a region using the GraphicsPath.
    Dim myRegion As New [Region](myPath)

    ' Get the bounding rectangle for myRegion and draw it to the
    ' screen in Red.
    Dim boundsRect As RectangleF = myRegion.GetBounds(e.Graphics)
    e.Graphics.DrawRectangle(Pens.Red, Rectangle.Round(boundsRect))
End Sub

Remarques

La transformation actuelle du contexte graphique est utilisée pour calculer l’intérieur de la région sur la surface de dessin.The current transformation of the graphics context is used to compute the region interior on the drawing surface. Le rectangle englobant n’est pas toujours le plus petit rectangle englobant possible en fonction de la transformation actuelle.The bounding rectangle is not always the smallest possible bounding rectangle depending on the current transformation.

S’applique à