Freigeben über


Blend.Positions-Eigenschaft

Ruft ein Array von Übergangspositionen für den Farbverlauf ab, oder legt dieses fest.

Namespace: System.Drawing.Drawing2D
Assembly: System.Drawing (in system.drawing.dll)

Syntax

'Declaration
Public Property Positions As Single()
'Usage
Dim instance As Blend
Dim value As Single()

value = instance.Positions

instance.Positions = value
public float[] Positions { get; set; }
public:
property array<float>^ Positions {
    array<float>^ get ();
    void set (array<float>^ value);
}
/** @property */
public float[] get_Positions ()

/** @property */
public void set_Positions (float[] value)
public function get Positions () : float[]

public function set Positions (value : float[])

Eigenschaftenwert

Ein Array von Übergangspositionen, die die Prozentsätze der Entfernung entlang der Farbverlaufslinie angeben.

Hinweise

Die Elemente dieses Arrays geben Prozentsätze der Entfernung entlang der Farbverlaufslinie an. Ein Elementwert von 0.2f gibt z. B. an, dass dieser Punkt 20 Prozent der Gesamtentfernung vom Anfangspunkt entfernt liegt. Die Elemente in diesem Array werden durch Gleitkommazahlen zwischen 0.0f und 1.0f dargestellt. Das erste Element des Arrays muss 0.0f sein und das letzte Element 1.0f.

Beispiel

Im folgenden Codebeispiel wird die Verwendung der Blend-Klasse durch Festlegen der Factors-Eigenschaft und der Positions-Eigenschaft veranschaulicht. Dieses Beispiel ist für die Verwendung mit Windows Forms vorgesehen. Fügen Sie den Code in ein Formular ein, das den System.Drawing.Drawing2D-Namespace importiert. Behandeln Sie das Paint-Ereignis des Formulars, und rufen Sie die DemonstrateBlend-Methode auf, wobei Sie e als PaintEventArgs übergeben.

Private Sub DemonstrateBlend(ByVal e As PaintEventArgs)
    Dim blend1 As New Blend(9)

    ' Set the values in the Factors array to be all green, 
    ' go to all blue, and then go back to green.
    blend1.Factors = New Single() {0.0F, 0.2F, 0.5F, 0.7F, 1.0F, _
        0.7F, 0.5F, 0.2F, 0.0F}

    ' Set the positions.
    blend1.Positions = New Single() {0.0F, 0.1F, 0.3F, 0.4F, 0.5F, _
        0.6F, 0.7F, 0.8F, 1.0F}

    ' Declare a rectangle to draw the Blend in.
    Dim rectangle1 As New Rectangle(10, 10, 120, 100)

    ' Create a new LinearGradientBrush using the rectangle, 
    ' green and blue. and 90-degree angle.
    Dim brush1 As New LinearGradientBrush(rectangle1, _
        Color.LightGreen, Color.Blue, 90, True)

    ' Set the Blend property on the brush to the custom blend.
    brush1.Blend = blend1

    ' Fill in an ellipse with the brush.
    e.Graphics.FillEllipse(brush1, rectangle1)

    ' Dispose of the custom brush.
    brush1.Dispose()
End Sub
private void DemonstrateBlend(PaintEventArgs e)
{
    Blend blend1 = new Blend(9);

    // Set the values in the Factors array to be all green, 
    // go to all blue, and then go back to green.
    blend1.Factors = new float[]{0.0F, 0.2F, 0.5F, 0.7F, 1.0F, 
                                    0.7F, 0.5F, 0.2F, 0.0F};

    // Set the positions.
    blend1.Positions = 
        new float[]{0.0F, 0.1F, 0.3F, 0.4F, 0.5F, 0.6F, 
        0.7F, 0.8F, 1.0F};

    // Declare a rectangle to draw the Blend in.
    Rectangle rectangle1 = new Rectangle(10, 10, 120, 100);

    // Create a new LinearGradientBrush using the rectangle, 
    // green and blue. and 90-degree angle.
    LinearGradientBrush brush1 = 
        new LinearGradientBrush(rectangle1, Color.LightGreen, 
        Color.Blue, 90, true);

    // Set the Blend property on the brush to the custom blend.
    brush1.Blend = blend1;

    // Fill in an ellipse with the brush.
    e.Graphics.FillEllipse(brush1, rectangle1);

    // Dispose of the custom brush.
    brush1.Dispose();
}
private:
   void DemonstrateBlend( PaintEventArgs^ e )
   {
      Blend^ blend1 = gcnew Blend( 9 );

      // Set the values in the Factors array to be all green, 
      // go to all blue, and then go back to green.
      array<Single>^temp0 = {0.0F,0.2F,0.5F,0.7F,1.0F,0.7F,0.5F,0.2F,0.0F};
      blend1->Factors = temp0;

      // Set the positions.
      array<Single>^temp1 = {0.0F,0.1F,0.3F,0.4F,0.5F,0.6F,0.7F,0.8F,1.0F};
      blend1->Positions = temp1;

      // Declare a rectangle to draw the Blend in.
      Rectangle rectangle1 = Rectangle(10,10,120,100);

      // Create a new LinearGradientBrush using the rectangle, 
      // green and blue. and 90-degree angle.
      LinearGradientBrush^ brush1 = gcnew LinearGradientBrush( rectangle1,Color::LightGreen,Color::Blue,90,true );

      // Set the Blend property on the brush to the custom blend.
      brush1->Blend = blend1;

      // Fill in an ellipse with the brush.
      e->Graphics->FillEllipse( brush1, rectangle1 );

      // Dispose of the custom brush.
      delete brush1;
   }
private void DemonstrateBlend(PaintEventArgs e)
{
    Blend blend1 = new Blend(9);

    // Set the values in the Factors array to be all green, 
    // go to all blue, and then go back to green.
    blend1.set_Factors(new float[] { 0.0F, 0.2F, 0.5F, 0.7F, 1.0F, 0.7F,
        0.5F, 0.2F, 0.0F });

    // Set the positions.
    blend1.set_Positions(new float[] { 0.0F, 0.1F, 0.3F, 0.4F, 0.5F, 0.6F,
        0.7F, 0.8F, 1.0F });

    // Declare a rectangle to draw the Blend in.
    Rectangle rectangle1 = new Rectangle(10, 10, 120, 100);

    // Create a new LinearGradientBrush using the rectangle, 
    // green and blue. and 90-degree angle.
    LinearGradientBrush brush1 = new LinearGradientBrush(rectangle1,
                                Color.get_LightGreen(), Color.get_Blue(),
                                90, true);

    // Set the Blend property on the brush to the custom blend.
    brush1.set_Blend(blend1);

    // Fill in an ellipse with the brush.
    e.get_Graphics().FillEllipse(brush1, rectangle1);

    // Dispose of the custom brush.
    brush1.Dispose();
} //DemonstrateBlend

Plattformen

Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.

Versionsinformationen

.NET Framework

Unterstützt in: 2.0, 1.1, 1.0

Siehe auch

Referenz

Blend-Klasse
Blend-Member
System.Drawing.Drawing2D-Namespace