Graphics.BeginContainer Graphics.BeginContainer Graphics.BeginContainer Graphics.BeginContainer Method

定義

この Graphics の現在の状態でグラフィックス コンテナーを保存し、新しいグラフィックス コンテナーを開いて使用します。Saves a graphics container with the current state of this Graphics and opens and uses a new graphics container.

オーバーロード

BeginContainer() BeginContainer() BeginContainer() BeginContainer()

この Graphics の現在の状態でグラフィックス コンテナーを保存し、新しいグラフィックス コンテナーを開いて使用します。Saves a graphics container with the current state of this Graphics and opens and uses a new graphics container.

BeginContainer(Rectangle, Rectangle, GraphicsUnit) BeginContainer(Rectangle, Rectangle, GraphicsUnit) BeginContainer(Rectangle, Rectangle, GraphicsUnit) BeginContainer(Rectangle, Rectangle, GraphicsUnit)

この Graphics の現在の状態でグラフィックス コンテナーを保存し、指定したスケール変換を行った新しいグラフィックス コンテナーを開いて使用します。Saves a graphics container with the current state of this Graphics and opens and uses a new graphics container with the specified scale transformation.

BeginContainer(RectangleF, RectangleF, GraphicsUnit) BeginContainer(RectangleF, RectangleF, GraphicsUnit) BeginContainer(RectangleF, RectangleF, GraphicsUnit) BeginContainer(RectangleF, RectangleF, GraphicsUnit)

この Graphics の現在の状態でグラフィックス コンテナーを保存し、指定したスケール変換を行った新しいグラフィックス コンテナーを開いて使用します。Saves a graphics container with the current state of this Graphics and opens and uses a new graphics container with the specified scale transformation.

BeginContainer() BeginContainer() BeginContainer() BeginContainer()

この Graphics の現在の状態でグラフィックス コンテナーを保存し、新しいグラフィックス コンテナーを開いて使用します。Saves a graphics container with the current state of this Graphics and opens and uses a new graphics container.

public:
 System::Drawing::Drawing2D::GraphicsContainer ^ BeginContainer();
public System.Drawing.Drawing2D.GraphicsContainer BeginContainer ();
member this.BeginContainer : unit -> System.Drawing.Drawing2D.GraphicsContainer
Public Function BeginContainer () As GraphicsContainer

戻り値

このメソッドは、メソッドが呼び出された時点での GraphicsContainer の状態を表す Graphics を返します。This method returns a GraphicsContainer that represents the state of this Graphics at the time of the method call.

次のコード例は、Windows フォームで使用するように設計さPaintEventArgsれています。これはPaint 、イベントハンドラーのパラメーターであるを必要eとします。The following code example is designed for use with Windows Forms, and it requires PaintEventArgse, which is a parameter of the Paint event handler. コードは、次のアクションを実行します。The code performs the following actions:

  • 新しいグラフィックスコンテナーを開き、古いコンテナーを保存します。Opens a new graphics container and saves the old container.

  • コンテナー内のワールド座標を変換します。Translates the world coordinates in the container.

  • 新しいコンテナーの (平行移動された座標) の赤い四角形に塗りつぶします。Fills a red rectangle in the (translated coordinates of the) new container.

  • 新しいコンテナーを閉じ、保存されたコンテナーを復元します。Closes the new container and restores the saved container.

  • 保存されたコンテナーの緑の四角形 (平行変換されていない座標) に塗りつぶします。Fills a green rectangle (to the untranslated coordinates) of the saved container.

結果は、同じサイズの赤い四角形を overlies する緑色の四角形です。The result is a green rectangle that overlies a red rectangle of the same size.

private:
   void BeginContainerVoid( PaintEventArgs^ e )
   {
      // Begin graphics container.
      GraphicsContainer^ containerState = e->Graphics->BeginContainer();

      // Translate world transformation.
      e->Graphics->TranslateTransform( 100.0F, 100.0F );

      // Fill translated rectangle in container with red.
      e->Graphics->FillRectangle( gcnew SolidBrush( Color::Red ), 0, 0, 200, 200 );

      // End graphics container.
      e->Graphics->EndContainer( containerState );

      // Fill untransformed rectangle with green.
      e->Graphics->FillRectangle( gcnew SolidBrush( Color::Green ), 0, 0, 200, 200 );
   }
private void BeginContainerVoid(PaintEventArgs e)
{
    // Begin graphics container.
    GraphicsContainer containerState = e.Graphics.BeginContainer();
             
    // Translate world transformation.
    e.Graphics.TranslateTransform(100.0F, 100.0F);
             
    // Fill translated rectangle in container with red.
    e.Graphics.FillRectangle(new SolidBrush(Color.Red), 0, 0, 200, 200);
             
    // End graphics container.
    e.Graphics.EndContainer(containerState);
             
    // Fill untransformed rectangle with green.
    e.Graphics.FillRectangle(new SolidBrush(Color.Green), 0, 0, 200, 200);
}
Private Sub BeginContainerVoid(ByVal e As PaintEventArgs)

    ' Begin graphics container.
    Dim containerState As GraphicsContainer = _
    e.Graphics.BeginContainer()

    ' Translate world transformation.
    e.Graphics.TranslateTransform(100.0F, 100.0F)

    ' Fill translated rectangle in container with red.
    e.Graphics.FillRectangle(New SolidBrush(Color.Red), 0, 0, 200, 200)

    ' End graphics container.
    e.Graphics.EndContainer(containerState)

    ' Fill untransformed rectangle with green.
    e.Graphics.FillRectangle(New SolidBrush(Color.Green), 0, 0, _
    200, 200)
End Sub

注釈

このメソッドをメソッドとEndContainer共に使用して、入れ子になったグラフィックスコンテナーを作成します。Use this method with the EndContainer method to create nested graphics containers. グラフィックスコンテナーは、変換、クリッピング領域、レンダリングプロパティなどのグラフィックスの状態を保持します。Graphics containers retain graphics state, such as transformation, clipping region, and rendering properties.

のメソッドをBeginContainer呼び出すと、の状態をGraphics保持する情報ブロックがスタックに配置されます。 GraphicsWhen you call the BeginContainer method of a Graphics, an information block that holds the state of the Graphics is put on a stack. メソッドBeginContainerは、そのGraphicsContainer情報ブロックを識別するを返します。The BeginContainer method returns a GraphicsContainer that identifies that information block. 識別オブジェクトをEndContainerメソッドに渡すと、情報ブロックがスタックから削除され、 BeginContainerメソッド呼び出し時の状態Graphicsにを復元するために使用されます。When you pass the identifying object to the EndContainer method, the information block is removed from the stack and is used to restore the Graphics to the state it was in at the time of the BeginContainer method call.

コンテナーは入れ子にすることができます。つまり、メソッドをBeginContainer EndContainer呼び出す前に、メソッドを複数回呼び出すことができます。Containers can be nested; that is, you can call the BeginContainer method several times before you call the EndContainer method. BeginContainerメソッドを呼び出すたびに、情報ブロックがスタックに格納され、情報ブロックのをGraphicsContainer受け取ります。Each time you call the BeginContainer method, an information block is put on the stack, and you receive a GraphicsContainer for the information block. これらのオブジェクトEndContainerのいずれかをメソッドに渡すと、そのGraphics特定GraphicsContainerのを返したBeginContainerメソッド呼び出しの時点の状態にが返されます。When you pass one of those objects to the EndContainer method, the Graphics is returned to the state it was in at the time of the BeginContainer method call that returned that particular GraphicsContainer. そのBeginContainerメソッド呼び出しによってスタックに配置された情報ブロックがスタックから削除され、そのBeginContainerメソッド呼び出しの後にそのスタックに配置されたすべての情報ブロックが削除されます。The information block placed on the stack by that BeginContainer method call is removed from the stack, and all information blocks placed on that stack after that BeginContainer method call are also removed.

メソッドを呼び出すと、メソッドのBeginContainer呼び出しと同じスタックに情報ブロックが配置されます。 SaveCalls to the Save method place information blocks on the same stack as calls to the BeginContainer method. メソッド呼び出しとEndContainer BeginContainerメソッド呼び出しを組み合わせた場合と同様に、 Restoreメソッド呼び出しはメソッド呼び出しとSaveペアになります。Just as an EndContainer method call is paired with a BeginContainer method call, a Restore method call is paired with a Save method call.

EndContainerメソッドを呼び出すと、 BeginContainerメソッドへの対応する呼び出しがスタックから削除Saveされた後BeginContainer 、(メソッドまたはメソッドによって) スタックに配置されたすべての情報ブロックがスタックから削除されます。When you call the EndContainer method, all information blocks placed on the stack (by the Save method or by the BeginContainer method) after the corresponding call to the BeginContainer method are removed from the stack. 同様に、 Restoreメソッドを呼び出すと、 Saveメソッドへの対応する呼び出しがスタックからSave削除されたBeginContainer後、(メソッドまたはメソッドによって) スタックに配置されたすべての情報ブロックがスタックから削除されます。Likewise, when you call the Restore method, all information blocks placed on the stack (by the Save method or by the BeginContainer method) after the corresponding call to the Save method are removed from the stack.

BeginContainerメソッドによって確立されるグラフィックスの状態には、既定のグラフィックスの状態のレンダリング品質が含まれます。メソッドが呼び出されたときに既存の表示品質の状態が変化すると、既定値にリセットされます。The graphics state established by the BeginContainer method includes the rendering qualities of the default graphics state; any rendering-quality state changes existing when the method is called are reset to the default values.

BeginContainer(Rectangle, Rectangle, GraphicsUnit) BeginContainer(Rectangle, Rectangle, GraphicsUnit) BeginContainer(Rectangle, Rectangle, GraphicsUnit) BeginContainer(Rectangle, Rectangle, GraphicsUnit)

この Graphics の現在の状態でグラフィックス コンテナーを保存し、指定したスケール変換を行った新しいグラフィックス コンテナーを開いて使用します。Saves a graphics container with the current state of this Graphics and opens and uses a new graphics container with the specified scale transformation.

public:
 System::Drawing::Drawing2D::GraphicsContainer ^ BeginContainer(System::Drawing::Rectangle dstrect, System::Drawing::Rectangle srcrect, System::Drawing::GraphicsUnit unit);
public System.Drawing.Drawing2D.GraphicsContainer BeginContainer (System.Drawing.Rectangle dstrect, System.Drawing.Rectangle srcrect, System.Drawing.GraphicsUnit unit);
member this.BeginContainer : System.Drawing.Rectangle * System.Drawing.Rectangle * System.Drawing.GraphicsUnit -> System.Drawing.Drawing2D.GraphicsContainer
Public Function BeginContainer (dstrect As Rectangle, srcrect As Rectangle, unit As GraphicsUnit) As GraphicsContainer

パラメーター

dstrect
Rectangle Rectangle Rectangle Rectangle

srcrect パラメーターと共にコンテナーのスケール変換を指定する Rectangle 構造体。Rectangle structure that, together with the srcrect parameter, specifies a scale transformation for the container.

srcrect
Rectangle Rectangle Rectangle Rectangle

dstrect パラメーターと共にコンテナーのスケール変換を指定する Rectangle 構造体。Rectangle structure that, together with the dstrect parameter, specifies a scale transformation for the container.

unit
GraphicsUnit GraphicsUnit GraphicsUnit GraphicsUnit

コンテナーの長さの単位を指定する GraphicsUnit 列挙体のメンバー。Member of the GraphicsUnit enumeration that specifies the unit of measure for the container.

戻り値

このメソッドは、メソッドが呼び出された時点での GraphicsContainer の状態を表す Graphics を返します。This method returns a GraphicsContainer that represents the state of this Graphics at the time of the method call.

次のコード例は、Windows フォームで使用するように設計さPaintEventArgsれています。これはPaint 、イベントハンドラーのパラメーターであるを必要eとします。The following code example is designed for use with Windows Forms, and it requires PaintEventArgse, which is a parameter of the Paint event handler. コードは、次のアクションを実行します。The code performs the following actions:

  • 新しいコンテナーのスケール変換を指定する2つの四角形を作成します。Creates two rectangles to specify a scale transformation for the new container.

  • 新しいグラフィックスコンテナーを開き、古いコンテナーを保存します。Opens the new graphics container and saves the old container.

  • 新しいコンテナーの (スケールされた座標) の赤い四角形に塗りつぶします。Fills a red rectangle in the (scaled coordinates of the) new container.

  • 新しいコンテナーを閉じ、保存されたコンテナーを復元します。Closes the new container and restores the saved container.

  • 保存されたコンテナーの緑の四角形 (スケールなしの座標) に塗りつぶします。Fills a green rectangle (to the unscaled coordinates) of the saved container.

結果は、小さな赤い四角形を overlies 緑色の四角形になります。The result is a green rectangle that overlies a smaller red rectangle.

private:
   void BeginContainerRectangle( PaintEventArgs^ e )
   {
      // Define transformation for container.
      Rectangle srcRect = Rectangle(0,0,200,200);
      Rectangle destRect = Rectangle(100,100,150,150);

      // Begin graphics container.
      GraphicsContainer^ containerState = e->Graphics->BeginContainer( destRect, srcRect, GraphicsUnit::Pixel );

      // Fill red rectangle in container.
      e->Graphics->FillRectangle( gcnew SolidBrush( Color::Red ), 0, 0, 200, 200 );

      // End graphics container.
      e->Graphics->EndContainer( containerState );

      // Fill untransformed rectangle with green.
      e->Graphics->FillRectangle( gcnew SolidBrush( Color::Green ), 0, 0, 200, 200 );
   }
private void BeginContainerRectangle(PaintEventArgs e)
{
    // Define transformation for container.
    Rectangle srcRect = new Rectangle(0, 0, 200, 200);
    Rectangle destRect = new Rectangle(100, 100, 150, 150);
             
    // Begin graphics container.
    GraphicsContainer containerState = e.Graphics.BeginContainer(
        destRect, srcRect,
        GraphicsUnit.Pixel);
             
    // Fill red rectangle in container.
    e.Graphics.FillRectangle(new SolidBrush(Color.Red), 0, 0, 200, 200);
             
    // End graphics container.
    e.Graphics.EndContainer(containerState);
             
    // Fill untransformed rectangle with green.
    e.Graphics.FillRectangle(new SolidBrush(Color.Green), 0, 0, 200, 200);
}
Private Sub BeginContainerRectangle(ByVal e As PaintEventArgs)

    ' Define transformation for container.
    Dim srcRect As New Rectangle(0, 0, 200, 200)
    Dim destRect As New Rectangle(100, 100, 150, 150)

    ' Begin graphics container.
    Dim containerState As GraphicsContainer = _
    e.Graphics.BeginContainer(destRect, srcRect, GraphicsUnit.Pixel)

    ' Fill red rectangle in container.
    e.Graphics.FillRectangle(New SolidBrush(Color.Red), 0, 0, 200, 200)

    ' End graphics container.
    e.Graphics.EndContainer(containerState)

    ' Fill untransformed rectangle with green.
    e.Graphics.FillRectangle(New SolidBrush(Color.Green), 0, 0, _
    200, 200)
End Sub

注釈

このメソッドをメソッドとEndContainer共に使用して、入れ子になったグラフィックスコンテナーを作成します。Use this method with the EndContainer method to create nested graphics containers. グラフィックスコンテナーは、変換、クリッピング領域、レンダリングプロパティなどのグラフィックスの状態を保持します。Graphics containers retain graphics state, such as transformation, clipping region, and rendering properties.

のメソッドをBeginContainer呼び出すと、の状態をGraphics保持する情報ブロックがスタックに配置されます。 GraphicsWhen you call the BeginContainer method of a Graphics, an information block that holds the state of the Graphics is put on a stack. メソッドBeginContainerは、そのGraphicsContainer情報ブロックを識別するを返します。The BeginContainer method returns a GraphicsContainer that identifies that information block. 識別オブジェクトをEndContainerメソッドに渡すと、情報ブロックがスタックから削除され、 BeginContainerメソッド呼び出し時の状態Graphicsにを復元するために使用されます。When you pass the identifying object to the EndContainer method, the information block is removed from the stack and is used to restore the Graphics to the state it was in at the time of the BeginContainer method call.

コンテナーは入れ子にすることができます。つまり、メソッドをBeginContainer EndContainer呼び出す前に、メソッドを複数回呼び出すことができます。Containers can be nested; that is, you can call the BeginContainer method several times before you call the EndContainer method. BeginContainerメソッドを呼び出すたびに、情報ブロックがスタックに格納され、情報ブロックのをGraphicsContainer受け取ります。Each time you call the BeginContainer method, an information block is put on the stack, and you receive a GraphicsContainer for the information block. これらのオブジェクトEndContainerのいずれかをメソッドに渡すと、そのGraphics特定GraphicsContainerのを返したBeginContainerメソッド呼び出しの時点の状態にが返されます。When you pass one of those objects to the EndContainer method, the Graphics is returned to the state it was in at the time of the BeginContainer method call that returned that particular GraphicsContainer. そのBeginContainerメソッド呼び出しによってスタックに配置された情報ブロックがスタックから削除され、そのBeginContainerメソッド呼び出しの後にそのスタックに配置されたすべての情報ブロックが削除されます。The information block placed on the stack by that BeginContainer method call is removed from the stack, and all information blocks placed on that stack after that BeginContainer method call are also removed.

メソッドを呼び出すと、メソッドのBeginContainer呼び出しと同じスタックに情報ブロックが配置されます。 SaveCalls to the Save method place information blocks on the same stack as calls to the BeginContainer method. メソッド呼び出しとEndContainer BeginContainerメソッド呼び出しを組み合わせた場合と同様に、 Restoreメソッド呼び出しはメソッド呼び出しとSaveペアになります。Just as an EndContainer method call is paired with a BeginContainer method call, a Restore method call is paired with a Save method call.

EndContainerメソッドを呼び出すと、 BeginContainerメソッドへの対応する呼び出しがスタックから削除Saveされた後BeginContainer 、(メソッドまたはメソッドによって) スタックに配置されたすべての情報ブロックがスタックから削除されます。When you call the EndContainer method, all information blocks placed on the stack (by the Save method or by the BeginContainer method) after the corresponding call to the BeginContainer method are removed from the stack. 同様に、 Restoreメソッドを呼び出すと、 Saveメソッドへの対応する呼び出しがスタックからSave削除されたBeginContainer後、(メソッドまたはメソッドによって) スタックに配置されたすべての情報ブロックがスタックから削除されます。Likewise, when you call the Restore method, all information blocks placed on the stack (by the Save method or by the BeginContainer method) after the corresponding call to the Save method are removed from the stack.

このメソッドは、 dstrectおよびsrcrectパラメーターを使用して、新しいグラフィックスコンテナーのスケール変換を指定します。This method specifies a scale transformation for the new graphics container with the dstrect and srcrect parameters. 小数点以下桁数は変換に相当します。これsrcrectは、にdstrect適用されると、になります。The scale is equal to the transformation that, when applied to srcrect, results in dstrect.

BeginContainerメソッドによって確立されるグラフィックスの状態には、既定のグラフィックスの状態のレンダリング品質が含まれます。メソッドが呼び出されたときに既存の表示品質の状態が変化すると、既定値にリセットされます。The graphics state established by the BeginContainer method includes the rendering qualities of the default graphics state; any rendering-quality state changes existing when the method is called are reset to the default values.

BeginContainer(RectangleF, RectangleF, GraphicsUnit) BeginContainer(RectangleF, RectangleF, GraphicsUnit) BeginContainer(RectangleF, RectangleF, GraphicsUnit) BeginContainer(RectangleF, RectangleF, GraphicsUnit)

この Graphics の現在の状態でグラフィックス コンテナーを保存し、指定したスケール変換を行った新しいグラフィックス コンテナーを開いて使用します。Saves a graphics container with the current state of this Graphics and opens and uses a new graphics container with the specified scale transformation.

public:
 System::Drawing::Drawing2D::GraphicsContainer ^ BeginContainer(System::Drawing::RectangleF dstrect, System::Drawing::RectangleF srcrect, System::Drawing::GraphicsUnit unit);
public System.Drawing.Drawing2D.GraphicsContainer BeginContainer (System.Drawing.RectangleF dstrect, System.Drawing.RectangleF srcrect, System.Drawing.GraphicsUnit unit);
member this.BeginContainer : System.Drawing.RectangleF * System.Drawing.RectangleF * System.Drawing.GraphicsUnit -> System.Drawing.Drawing2D.GraphicsContainer
Public Function BeginContainer (dstrect As RectangleF, srcrect As RectangleF, unit As GraphicsUnit) As GraphicsContainer

パラメーター

dstrect
RectangleF RectangleF RectangleF RectangleF

srcrect パラメーターと共に新しいグラフィックス コンテナーのスケール変換を指定する RectangleF 構造体。RectangleF structure that, together with the srcrect parameter, specifies a scale transformation for the new graphics container.

srcrect
RectangleF RectangleF RectangleF RectangleF

dstrect パラメーターと共に新しいグラフィックス コンテナーのスケール変換を指定する RectangleF 構造体。RectangleF structure that, together with the dstrect parameter, specifies a scale transformation for the new graphics container.

unit
GraphicsUnit GraphicsUnit GraphicsUnit GraphicsUnit

コンテナーの長さの単位を指定する GraphicsUnit 列挙体のメンバー。Member of the GraphicsUnit enumeration that specifies the unit of measure for the container.

戻り値

このメソッドは、メソッドが呼び出された時点での GraphicsContainer の状態を表す Graphics を返します。This method returns a GraphicsContainer that represents the state of this Graphics at the time of the method call.

次のコード例は、Windows フォームで使用するように設計さPaintEventArgsれています。これはPaint 、イベントハンドラーのパラメーターであるを必要eとします。The following code example is designed for use with Windows Forms, and it requires PaintEventArgse, which is a parameter of the Paint event handler. コードは、次のアクションを実行します。The code performs the following actions:

  • 新しいコンテナーのスケール変換を指定する2つの四角形を作成します。Creates two rectangles to specify a scale transformation for the new container.

  • 新しいグラフィックスコンテナーを開き、古いコンテナーを保存します。Opens the new graphics container and saves the old container.

  • 新しいコンテナーの (スケールされた座標) の赤い四角形に塗りつぶします。Fills a red rectangle in the (scaled coordinates of the) new container.

  • 新しいコンテナーを閉じ、保存されたコンテナーを復元します。Closes the new container and restores the saved container.

  • 保存されたコンテナーの緑の四角形 (スケールなしの座標) に塗りつぶします。Fills a green rectangle (to the unscaled coordinates) of the saved container.

結果は、小さな赤い四角形を overlies 緑色の四角形になります。The result is a green rectangle that overlies a smaller red rectangle.

private:
   void BeginContainerRectangleF( PaintEventArgs^ e )
   {
      // Define transformation for container.
      RectangleF srcRect = RectangleF(0.0F,0.0F,200.0F,200.0F);
      RectangleF destRect = RectangleF(100.0F,100.0F,150.0F,150.0F);

      // Begin graphics container.
      GraphicsContainer^ containerState = e->Graphics->BeginContainer( destRect, srcRect, GraphicsUnit::Pixel );

      // Fill red rectangle in container.
      e->Graphics->FillRectangle( gcnew SolidBrush( Color::Red ), 0.0F, 0.0F, 200.0F, 200.0F );

      // End graphics container.
      e->Graphics->EndContainer( containerState );

      // Fill untransformed rectangle with green.
      e->Graphics->FillRectangle( gcnew SolidBrush( Color::Green ), 0.0F, 0.0F, 200.0F, 200.0F );
   }
private void BeginContainerRectangleF(PaintEventArgs e)
{
    // Define transformation for container.
    RectangleF srcRect = new RectangleF(0.0F, 0.0F, 200.0F, 200.0F);
    RectangleF destRect = new RectangleF(100.0F, 100.0F, 150.0F, 150.0F);
             
    // Begin graphics container.
    GraphicsContainer containerState = e.Graphics.BeginContainer(
        destRect, srcRect,
        GraphicsUnit.Pixel);
             
    // Fill red rectangle in container.
    e.Graphics.FillRectangle(new SolidBrush(Color.Red), 0.0F, 0.0F, 200.0F, 200.0F);
             
    // End graphics container.
    e.Graphics.EndContainer(containerState);
             
    // Fill untransformed rectangle with green.
    e.Graphics.FillRectangle(new SolidBrush(Color.Green), 0.0F, 0.0F, 200.0F, 200.0F);
}
Private Sub BeginContainerRectangleF(ByVal e As PaintEventArgs)

    ' Define transformation for container.
    Dim srcRect As New RectangleF(0.0F, 0.0F, 200.0F, 200.0F)
    Dim destRect As New RectangleF(100.0F, 100.0F, 150.0F, 150.0F)

    ' Begin graphics container.
    Dim containerState As GraphicsContainer = _
    e.Graphics.BeginContainer(destRect, srcRect, GraphicsUnit.Pixel)

    ' Fill red rectangle in container.
    e.Graphics.FillRectangle(New SolidBrush(Color.Red), 0.0F, 0.0F, _
    200.0F, 200.0F)

    ' End graphics container.
    e.Graphics.EndContainer(containerState)

    ' Fill untransformed rectangle with green.
    e.Graphics.FillRectangle(New SolidBrush(Color.Green), 0.0F, 0.0F, _
    200.0F, 200.0F)
End Sub

注釈

このメソッドをメソッドとEndContainer共に使用して、入れ子になったグラフィックスコンテナーを作成します。Use this method with the EndContainer method to create nested graphics containers. グラフィックスコンテナーは、変換、クリッピング領域、レンダリングプロパティなどのグラフィックスの状態を保持します。Graphics containers retain graphics state, such as transformation, clipping region, and rendering properties.

のメソッドをBeginContainer呼び出すと、の状態をGraphics保持する情報ブロックがスタックに配置されます。 GraphicsWhen you call the BeginContainer method of a Graphics, an information block that holds the state of the Graphics is put on a stack. メソッドBeginContainerは、そのGraphicsContainer情報ブロックを識別するを返します。The BeginContainer method returns a GraphicsContainer that identifies that information block. 識別オブジェクトをEndContainerメソッドに渡すと、情報ブロックがスタックから削除され、 BeginContainerメソッド呼び出し時の状態Graphicsにを復元するために使用されます。When you pass the identifying object to the EndContainer method, the information block is removed from the stack and is used to restore the Graphics to the state it was in at the time of the BeginContainer method call.

コンテナーは入れ子にすることができます。つまり、メソッドをBeginContainer EndContainer呼び出す前に、メソッドを複数回呼び出すことができます。Containers can be nested; that is, you can call the BeginContainer method several times before you call the EndContainer method. BeginContainerメソッドを呼び出すたびに、情報ブロックがスタックに格納され、情報ブロックのをGraphicsContainer受け取ります。Each time you call the BeginContainer method, an information block is put on the stack, and you receive a GraphicsContainer for the information block. これらのオブジェクトEndContainerのいずれかをメソッドに渡すと、そのGraphics特定GraphicsContainerのを返したBeginContainerメソッド呼び出しの時点の状態にが返されます。When you pass one of those objects to the EndContainer method, the Graphics is returned to the state it was in at the time of the BeginContainer method call that returned that particular GraphicsContainer. そのBeginContainerメソッド呼び出しによってスタックに配置された情報ブロックがスタックから削除され、そのBeginContainerメソッド呼び出しの後にそのスタックに配置されたすべての情報ブロックが削除されます。The information block placed on the stack by that BeginContainer method call is removed from the stack, and all information blocks placed on that stack after that BeginContainer method call are also removed.

メソッドを呼び出すと、メソッドのBeginContainer呼び出しと同じスタックに情報ブロックが配置されます。 SaveCalls to the Save method place information blocks on the same stack as calls to the BeginContainer method. メソッド呼び出しとEndContainer BeginContainerメソッド呼び出しを組み合わせた場合と同様に、 Restoreメソッド呼び出しはメソッド呼び出しとSaveペアになります。Just as an EndContainer method call is paired with a BeginContainer method call, a Restore method call is paired with a Save method call.

EndContainerメソッドを呼び出すと、 BeginContainerメソッドへの対応する呼び出しがスタックから削除Saveされた後BeginContainer 、(メソッドまたはメソッドによって) スタックに配置されたすべての情報ブロックがスタックから削除されます。When you call the EndContainer method, all information blocks placed on the stack (by the Save method or by the BeginContainer method) after the corresponding call to the BeginContainer method are removed from the stack. 同様に、 Restoreメソッドを呼び出すと、 Saveメソッドへの対応する呼び出しがスタックからSave削除されたBeginContainer後、(メソッドまたはメソッドによって) スタックに配置されたすべての情報ブロックがスタックから削除されます。Likewise, when you call the Restore method, all information blocks placed on the stack (by the Save method or by the BeginContainer method) after the corresponding call to the Save method are removed from the stack.

このメソッドは、 dstrectおよびsrcrectパラメーターを使用して、新しいグラフィックスコンテナーのスケール変換を指定します。This method specifies a scale transformation for the new graphics container with the dstrect and srcrect parameters. 小数点以下桁数は変換に相当します。これsrcrectは、にdstrect適用されると、になります。The scale is equal to the transformation that, when applied to srcrect, results in dstrect.

BeginContainerメソッドによって確立されるグラフィックスの状態には、既定のグラフィックスの状態のレンダリング品質が含まれます。メソッドが呼び出されたときに既存の表示品質の状態が変化すると、既定値にリセットされます。The graphics state established by the BeginContainer method includes the rendering qualities of the default graphics state; any rendering-quality state changes existing when the method is called are reset to the default values.

適用対象