Color.ToArgb Methode

Definition

Ruft den 32-Bit-ARGB-Wert dieser Color Struktur ab.

public:
 int ToArgb();
public int ToArgb ();
member this.ToArgb : unit -> int
Public Function ToArgb () As Integer

Gibt zurück

Der 32-Bit-ARGB-Wert dieses Color.

Beispiele

Das folgende Codebeispiel wurde für die Verwendung mit Windows Forms entwickelt und erfordert PaintEventArgse, bei dem es sich um einen Parameter des Paint-Ereignishandlers handelt. Der Code führt die folgenden Aktionen aus:

  • Durchlaufen Sie die KnownColor Enumerationselemente, um alle bekannten Farben zu finden, die eine nicht nullgrüne Komponente und eine nullwertige rote Komponente aufweisen und keine Systemfarben sind.

  • Speichert bei jeder Iteration das KnownColor-Element – sofern es den Kriterien entspricht – in einem Array.

  • Verwendet einen Pinsel, um Rechtecke zu zeichnen.

Jedes Rechteck wird mit einer KnownColor gezeichnet, die den im ersten Aufzählungszeichen angegebenen Kriterien entspricht. Der Name der KnownColor und der zugehörigen Komponentenwerte werden ebenfalls angezeigt.

In diesem Beispiel werden bestimmte bekannte Farben, die Namen der Farben und deren vier Komponentenwerte angezeigt. Die ToArgb-Methode wird als vorläufiger Schritt zum Anzeigen der Komponentenwerte verwendet.

void ToArgbToStringExample1( PaintEventArgs^ e )
{
   Graphics^ g = e->Graphics;

   // Color structure used for temporary storage.
   Color someColor = Color::FromArgb( 0 );

   // Array to store KnownColor values that match the criteria.
   array<KnownColor>^colorMatches = gcnew array<KnownColor>(167);

   // Number of matches found.
   int count = 0;

   // Iterate through the KnownColor enums to find all corresponding colors
   // that have a nonzero green component and zero-value red component and
   // that are not system colors.
   for ( KnownColor enumValue = (KnownColor)0; enumValue <= KnownColor::YellowGreen; enumValue = enumValue + (KnownColor)1 )
   {
      someColor = Color::FromKnownColor( enumValue );
      if ( someColor.G != 0 && someColor.R == 0 &&  !someColor.IsSystemColor )
               colorMatches[ count++ ] = enumValue;
   }
   SolidBrush^ myBrush1 = gcnew SolidBrush( someColor );
   System::Drawing::Font^ myFont = gcnew System::Drawing::Font( "Arial",9 );
   int x = 40;
   int y = 40;

   // Iterate through the matches that were found and display each color that
   // corresponds with the enum value in the array. also display the name of
   // the KnownColor and the ARGB components.
   for ( int i = 0; i < count; i++ )
   {
      // Display the color.
      someColor = Color::FromKnownColor( colorMatches[ i ] );
      myBrush1->Color = someColor;
      g->FillRectangle( myBrush1, x, y, 50, 30 );

      // Display KnownColor name and the four component values. To display the
      // component values:  Use the ToArgb method to get the 32-bit ARGB value
      // of someColor, which was created from a KnownColor. Then create a
      // Color structure from the 32-bit ARGB value and set someColor equal to
      // this new Color structure. Then use the ToString method to convert it to
      // a string.
      g->DrawString( someColor.ToString(), myFont, Brushes::Black, (float)x + 55, (float)y );
      someColor = Color::FromArgb( someColor.ToArgb() );
      g->DrawString( someColor.ToString(), myFont, Brushes::Black, (float)x + 55, (float)y + 15 );
      y += 40;
   }
}
      public void ToArgbToStringExample1(PaintEventArgs e)
      {
          Graphics     g = e.Graphics;
                   
          // Color structure used for temporary storage.
          Color   someColor = Color.FromArgb(0);
                   
          // Array to store KnownColor values that match the criteria.
          KnownColor[]  colorMatches = new KnownColor[167];
          
          // Number of matches found.
          int  count = 0; 

          // Iterate through the KnownColor enums to find all corresponding colors
          // that have a nonzero green component and zero-value red component and
          // that are not system colors.
          for (KnownColor enumValue = 0;
              enumValue <= KnownColor.YellowGreen; enumValue++)
          {
              someColor = Color.FromKnownColor(enumValue);
              if (someColor.G != 0 && someColor.R == 0 && !someColor.IsSystemColor)
                  colorMatches[count++] = enumValue;
          }
          SolidBrush  myBrush1 = new SolidBrush(someColor);
          Font        myFont = new Font("Arial", 9);
          int         x = 40;
          int         y = 40;
                   
          // Iterate through the matches that were found and display each color that
          // corresponds with the enum value in the array. also display the name of
          // the KnownColor and the ARGB components.
          for (int i = 0; i < count; i++)
          {
                   
              // Display the color.
              someColor = Color.FromKnownColor(colorMatches[i]);
              myBrush1.Color = someColor;
              g.FillRectangle(myBrush1, x, y, 50, 30);
                   
              // Display KnownColor name and the four component values. To display the
              // component values:  Use the ToArgb method to get the 32-bit ARGB value
              // of someColor, which was created from a KnownColor. Then create a
              // Color structure from the 32-bit ARGB value and set someColor equal to
              // this new Color structure. Then use the ToString method to convert it to
              // a string.
              g.DrawString(someColor.ToString(), myFont, Brushes.Black, x + 55, y);
              someColor = Color.FromArgb(someColor.ToArgb());
              g.DrawString(someColor.ToString(), myFont, Brushes.Black, x + 55, y + 15);
              y += 40;
          }
      }
Public Sub ToArgbToStringExample1(ByVal e As PaintEventArgs)
    Dim g As Graphics = e.Graphics

    ' Color structure used for temporary storage.
    Dim someColor As Color = Color.FromArgb(0)

    ' Array to store KnownColor values that match the criteria.
    Dim colorMatches(167) As KnownColor

    ' Number of matches found.
    Dim count As Integer = 0

    ' Iterate through KnownColor enums to find all corresponding colors
    ' that have a non-zero green component and zero-valued red
    ' component and that are not system colors.
    Dim enumValue As KnownColor
    For enumValue = 0 To KnownColor.YellowGreen
        someColor = Color.FromKnownColor(enumValue)
        If someColor.G <> 0 And someColor.R = 0 And _
        Not someColor.IsSystemColor Then
            colorMatches(count) = enumValue
            count += 1
        End If
    Next enumValue
    Dim myBrush1 As New SolidBrush(someColor)
    Dim myFont As New Font("Arial", 9)
    Dim x As Integer = 40
    Dim y As Integer = 40

    ' Iterate through the matches found and display each color that
    ' corresponds with the enum value in the array. Also display the
    ' name of the KnownColor and the ARGB components.
    Dim i As Integer
    For i = 0 To count - 1

        ' Display the color.
        someColor = Color.FromKnownColor(colorMatches(i))
        myBrush1.Color = someColor
        g.FillRectangle(myBrush1, x, y, 50, 30)

        ' Display KnownColor name and four component values. To display
        ' component values:  Use the ToArgb method to get the 32-bit
        ' ARGB value of someColor (created from a KnownColor). Create
        ' a Color structure from the 32-bit ARGB value and set someColor
        ' equal to this new Color structure. Then use the ToString method
        ' to convert it to a string.
        g.DrawString(someColor.ToString(), myFont, Brushes.Black, _
        x + 55, y)
        someColor = Color.FromArgb(someColor.ToArgb())
        g.DrawString(someColor.ToString(), myFont, Brushes.Black, _
        x + 55, y + 15)
        y += 40
    Next i
End Sub

Hinweise

Die Byte-Sortierung des 32-Bit-ARGB-Werts ist AARRGGBB. Das wichtigste Byte (MSB), dargestellt durch AA, ist der Alpha-Komponentenwert. Die zweiten, dritten und vierten Bytes, dargestellt durch RR, GG und BB, sind die Farbkomponenten Rot, Grün und Blau.

Gilt für: