LinearGradientBrush.Clone Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Creates an exact copy of this LinearGradientBrush.
public:
override System::Object ^ Clone();
public override object Clone ();
override this.Clone : unit -> obj
Public Overrides Function Clone () As Object
Returns
The LinearGradientBrush this method creates, cast as an object.
Examples
The following code example is designed for use with Windows Forms, and it requires PaintEventArgs e
, an OnPaint event object. The code performs the following actions:
Creates a new LinearGradientBrush.
Draws an ellipse to the screen using this brush.
Clones the LinearGradientBrush (
clonedLGBrush
).Draws an ellipse to the screen directly below the first ellipse, using the cloned brush.
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
Applies to
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈