Convertir couleur en hexa [Résolu]

Messages postés
102
Date d'inscription
mercredi 5 février 2003
Statut
Membre
Dernière intervention
17 mars 2009
- - Dernière réponse : cs_lagoelle
Messages postés
102
Date d'inscription
mercredi 5 février 2003
Statut
Membre
Dernière intervention
17 mars 2009
- 22 juin 2007 à 13:16
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
Afficher la suite 

Votre réponse

6 réponses

Meilleure réponse
Messages postés
6366
Date d'inscription
samedi 1 juin 2002
Statut
Modérateur
Dernière intervention
2 août 2014
92
3
Merci
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#
*/

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 109 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_coq
Messages postés
6366
Date d'inscription
samedi 1 juin 2002
Statut
Modérateur
Dernière intervention
2 août 2014
92
0
Merci
Salut,

Avec la méthode ToHtml de la classe ColorTranslator.

/*
coq
MVP Visual C#
*/
Commenter la réponse de cs_coq
Messages postés
102
Date d'inscription
mercredi 5 février 2003
Statut
Membre
Dernière intervention
17 mars 2009
0
Merci
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
Commenter la réponse de cs_lagoelle
Messages postés
102
Date d'inscription
mercredi 5 février 2003
Statut
Membre
Dernière intervention
17 mars 2009
0
Merci
Merci beaucoup coq ;-)

@ plus

lagoelle
Commenter la réponse de cs_lagoelle
Messages postés
5507
Date d'inscription
dimanche 4 août 2002
Statut
Modérateur
Dernière intervention
20 juin 2013
59
Commenter la réponse de cs_Bidou
Messages postés
102
Date d'inscription
mercredi 5 février 2003
Statut
Membre
Dernière intervention
17 mars 2009
0
Merci
En effet, c'est une autre possibilité. Merci ;-)

@ plus

lagoelle
Commenter la réponse de cs_lagoelle

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.