COLORREF en CHAR

cs_Homere Messages postés 14 Date d'inscription samedi 9 août 2003 Statut Membre Dernière intervention 6 mars 2004 - 9 févr. 2004 à 18:57
cs_Homere Messages postés 14 Date d'inscription samedi 9 août 2003 Statut Membre Dernière intervention 6 mars 2004 - 10 févr. 2004 à 00:01
Bonjour,
J'aimerais savoir comment "afficher" une valeur colorref, donc comment la convertir en chaine de caractère (char, string ou lpstr, aucune importance).
Merci !

4 réponses

vecchio56 Messages postés 6535 Date d'inscription lundi 16 décembre 2002 Statut Membre Dernière intervention 22 août 2010 14
9 févr. 2004 à 20:27
va voir comment est définie la macro RGB et tu verras comment récupérer les valeur r, g, b et puis mets les dans un char* avec sprintf
0
cs_Homere Messages postés 14 Date d'inscription samedi 9 août 2003 Statut Membre Dernière intervention 6 mars 2004
9 févr. 2004 à 22:07
Et ce n'est pas possible de récupérer directement la valeur hexadécimal ?
0
ymca2003 Messages postés 2070 Date d'inscription mardi 22 avril 2003 Statut Membre Dernière intervention 3 juillet 2006 7
9 févr. 2004 à 22:56
COLORREF est simplement un entier de 32 bits :
typedef DWORD COLORREF;

pour obtenir une représentation en hexa :
COLORREF color;
char szText[32];

itoa(color, szText, 16);
ou
sprintf(szText, "%08X", color);

résultat : 00BBGGRR
BB : composante Bleue.
GG : composante verte.
RR : composante rouge.
0
cs_Homere Messages postés 14 Date d'inscription samedi 9 août 2003 Statut Membre Dernière intervention 6 mars 2004
10 févr. 2004 à 00:01
C'est exactement ce que je voulais ^^ ! Merci !
0
Rejoignez-nous