다음을 통해 공유


LinearGradientBrush.Clone 메서드

정의

LinearGradientBrush정확한 복사본을 만듭니다.

public:
 override System::Object ^ Clone();
public override object Clone ();
override this.Clone : unit -> obj
Public Overrides Function Clone () As Object

반환

이 메서드가 개체로 캐스팅하여 만드는 LinearGradientBrush.

예제

다음 코드 예제는 Windows Forms에서 사용하도록 설계되었으며 OnPaint 이벤트 개체인 PaintEventArgse필요합니다. 코드는 다음 작업을 수행합니다.

  • LinearGradientBrush만듭니다.

  • 이 브러시를 사용하여 화면에 줄임표를 그립니다.

  • LinearGradientBrush(clonedLGBrush)를 복제합니다.

  • 복제된 브러시를 사용하여 첫 번째 줄임표 바로 아래의 화면에 줄임표를 그립니다.

private:
   void CloneExample( PaintEventArgs^ e )
   {
      // Create a LinearGradientBrush.
      int x = 20,y = 20,h = 100,w = 200;
      Rectangle myRect = Rectangle(x,y,w,h);
      LinearGradientBrush^ myLGBrush = gcnew LinearGradientBrush( myRect,Color::Blue,Color::Aquamarine,45.0f,true );

      // Draw an ellipse to the screen using the LinearGradientBrush.
      e->Graphics->FillEllipse( myLGBrush, x, y, w, h );

      // Clone the LinearGradientBrush.
      LinearGradientBrush^ clonedLGBrush = dynamic_cast<LinearGradientBrush^>(myLGBrush->Clone());

      // Justify the left edge of the gradient with the
      // left edge of the ellipse.
      clonedLGBrush->TranslateTransform(  -100.0f, 0.0f );

      // Draw a second ellipse to the screen using the cloned HBrush.
      y = 150;
      e->Graphics->FillEllipse( clonedLGBrush, x, y, w, h );
   }
private void CloneExample(PaintEventArgs e)
{
             
    // Create a LinearGradientBrush.
    int x=20, y=20, h=100, w=200;
    Rectangle myRect = new Rectangle(x, y, w, h);
    LinearGradientBrush myLGBrush = new LinearGradientBrush(
        myRect, Color.Blue, Color.Aquamarine, 45.0f, true);

    // Draw an ellipse to the screen using the LinearGradientBrush.
    e.Graphics.FillEllipse(myLGBrush, x, y, w, h);
             
    // Clone the LinearGradientBrush.
    LinearGradientBrush clonedLGBrush =
        (LinearGradientBrush)myLGBrush.Clone();
             
    // Justify the left edge of the gradient with the
    // left edge of the ellipse.
    clonedLGBrush.TranslateTransform(-100.0f, 0.0f);
             
    // Draw a second ellipse to the screen using the cloned HBrush.
    y=150;
    e.Graphics.FillEllipse(clonedLGBrush, x, y, w, h);
}
Public Sub CloneExample(ByVal e As PaintEventArgs)

    ' Create a LinearGradientBrush.
    Dim x As Integer = 20
    Dim y As Integer = 20
    Dim h As Integer = 100
    Dim w As Integer = 200
    Dim myRect As New Rectangle(x, y, w, h)
    Dim myLGBrush As New LinearGradientBrush(myRect, Color.Blue, _
    Color.Aquamarine, 45.0F, True)

    ' Draw an ellipse to the screen using the LinearGradientBrush.
    e.Graphics.FillEllipse(myLGBrush, x, y, w, h)

    ' Clone the LinearGradientBrush.
    Dim clonedLGBrush As LinearGradientBrush = _
    CType(myLGBrush.Clone(), LinearGradientBrush)

    ' Justify the left edge of the gradient with the left edge of the
    ' ellipse.
    clonedLGBrush.TranslateTransform(-100.0F, 0.0F)

    ' Draw a second ellipse to the screen using the cloned HBrush.
    y = 150
    e.Graphics.FillEllipse(clonedLGBrush, x, y, w, h)
End Sub

적용 대상