Color.ToString Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Convierte esta estructura Color en una cadena legible.
public:
override System::String ^ ToString();
public override string ToString ();
override this.ToString : unit -> string
Public Overrides Function ToString () As String
Devoluciones
Cadena que es el nombre de este Color, si el Color se crea a partir de un color predefinido mediante el método FromName(String) o el método FromKnownColor(KnownColor); De lo contrario, una cadena que consta de los nombres de componente ARGB y sus valores.
Ejemplos
El ejemplo de código siguiente está diseñado para su uso con Windows Forms y requiere PaintEventArgse
, que es un parámetro del controlador de eventos Paint. El código realiza las siguientes acciones:
Recorre en iteración los elementos de enumeración KnownColor para buscar todos los colores conocidos que tienen un componente verde distinto de cero y un componente rojo de valor cero y que no son colores del sistema.
Durante cada iteración, guarda el elemento KnownColor , si coincide con los criterios, en una matriz.
Usa un pincel para pintar rectángulos. Cada uno de los rectángulos se pinta un KnownColor que coincide con los criterios indicados en el primer paso. También se muestran el nombre del KnownColor y sus valores de componente.
En este ejemplo se muestran determinados colores conocidos y se usa ToString para mostrar los nombres de los colores y sus cuatro valores de componente.
void ToArgbToStringExample2( 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 ToArgbToStringExample2(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 ToArgbToStringExample2(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
Comentarios
Un color predefinido también se denomina color conocido y se representa mediante un elemento de la enumeración KnownColor. Cuando el método ToString se aplica a una estructura de Color creada mediante el método FromArgb, ToString devuelve una cadena que consta de los nombres de componente ARGB y sus valores, incluso si el valor ARGB coincide con el valor ARGB de un color predefinido.