Convertir couleur en hexa [Résolu]

Signaler
Messages postés
102
Date d'inscription
mercredi 5 février 2003
Statut
Membre
Dernière intervention
17 mars 2009
-
Messages postés
102
Date d'inscription
mercredi 5 février 2003
Statut
Membre
Dernière intervention
17 mars 2009
-
Bonjour,
Je suis sur un projet de création de skin pour SPV C600 et je dois créer un colorScheme.
Comment convertir une couleur en valeur hexa (#FFFF par exemple) ?
Merci d'avance

@ plus

lagoelle

6 réponses

Messages postés
6351
Date d'inscription
samedi 1 juin 2002
Statut
Modérateur
Dernière intervention
2 août 2014
84
Ah oui, j'avais oublier que quand il s'agit d'une couleur nommée il donne son nom (logique).

Donc soit tu écrit tes routines de convertion, soit tu bidouilles ^^ :

Color col = Color.FromArgb(Color.White.ToArgb());
MessageBox.Show(ColorTranslator.ToHtml(col));

Te donneras #FFFFFF

Alors que
Color col = Color.White;
MessageBox.Show(ColorTranslator.ToHtml(col));

Te donneras "White", comme il connait le nom.

En gros, le tout est d'éliminer le nom de la structure Color en initialisant une nouvelle à partir de l'ARGB de la couleur nommée.

Exemple de méthode "finie" :

private static string ColorToHex(Color col)
{
if (col.IsNamedColor || col.IsKnownColor || col.IsSystemColor)
{
return ColorTranslator.ToHtml(Color.FromArgb(col.ToArgb()));
}
else
{
return ColorTranslator.ToHtml(col);
}
}

/*
coq
MVP Visual C#
*/
Messages postés
6351
Date d'inscription
samedi 1 juin 2002
Statut
Modérateur
Dernière intervention
2 août 2014
84
Salut,

Avec la méthode ToHtml de la classe ColorTranslator.

/*
coq
MVP Visual C#
*/
Messages postés
102
Date d'inscription
mercredi 5 février 2003
Statut
Membre
Dernière intervention
17 mars 2009

Salut coq

J'ai essayé ça:
string couleur = ColorTranslator.ToHtml(cmdCOLOR_GRADLEFT.BackColor);
MessageBox.Show(couleur);

et ça me renvoie "White".
Ce que je voudrais c'est le code Hexa (#00000)
J'ai peut etre mal utilisé la méthode :-(

@ plus

lagoelle
Messages postés
102
Date d'inscription
mercredi 5 février 2003
Statut
Membre
Dernière intervention
17 mars 2009

Merci beaucoup coq ;-)

@ plus

lagoelle
Messages postés
5487
Date d'inscription
dimanche 4 août 2002
Statut
Modérateur
Dernière intervention
20 juin 2013
49
Messages postés
102
Date d'inscription
mercredi 5 février 2003
Statut
Membre
Dernière intervention
17 mars 2009

En effet, c'est une autre possibilité. Merci ;-)

@ plus

lagoelle