Page 1 sur 1

[R] Code couleur inversé

Posté : ven. 18 avr. 2014 20:21
par parazitenew
Bonsoir,

Depuis 2 ans que je code en Autoit je n'ai jamais été confronté à ce problème, qui est le code couleur, j'ai toujours pris une couleur depuis le logiciel The GIMP, je prends le code HTML et je rajoute 0x au début, ça a toujours marché, seulement, j'ai remarqué que pour certaines couleurs, enfin pour la plupart il fallait inverser le code en 2 carcartères par deux, exemple, la couleur "f1d316" orange clair, sur GIMP, en Autoit je mets "0xf1d316" ça me donne un bleu turquois, pour avoir l'orange, je dois mettre, "0x16d3f1" or, avec la couleur "69bc58", je ne suis pas obligé de faire cet inversement.

Pourquoi je dois le faire sur certaines couleurs et pas d'autres?

Re: [..] Code couleur inversé

Posté : ven. 18 avr. 2014 22:08
par jchd
Tu dois confondre 58 et 69, qui ne sont pas très éloignées.
Au pif, je dirais que c'est la distinction entre RGB et BGR.

Re: [..] Code couleur inversé

Posté : ven. 18 avr. 2014 23:12
par parazitenew
jchd a écrit :Tu dois confondre 58 et 69, qui ne sont pas très éloignées.
Au pif, je dirais que c'est la distinction entre RGB et BGR.
Je fais des copier coller, ça ne peut pas être une confusion, pour le RGB et BGR par contre c'est pas faux, ça pourrait être ça.

Re: [..] Code couleur inversé

Posté : ven. 18 avr. 2014 23:38
par TommyDDR
Ce que jchd veut dire c'est que visuellement 58 et 69 sont proche donc 69bc58 est à peu près de la même couleur que 58bc69.

Par contre, autoit fonctionne en RGB en ce qui concerne les GUICtrlSetColor et autre fonction du même genre.
Donc F1D316 = jaune orangé.

Pouvez vous fournir votre code avec le 16D3F1 pour le jaune orangé ?

Re: [..] Code couleur inversé

Posté : sam. 19 avr. 2014 02:51
par parazitenew
TommyDDR a écrit :Ce que jchd veut dire c'est que visuellement 58 et 69 sont proche donc 69bc58 est à peu près de la même couleur que 58bc69.

Par contre, autoit fonctionne en RGB en ce qui concerne les GUICtrlSetColor et autre fonction du même genre.
Donc F1D316 = jaune orangé.

Pouvez vous fournir votre code avec le 16D3F1 pour le jaune orangé ?
Il s'agit d'une listview, j'ai trouvé que 16D3F1 était un peu fort comme orange alors je l'ai changé par "5acef1", que GIMP et les sites des codes couleur htlm et hexa affichent "f1ce5a", donc c'est ça, gimp et les autres sites affichent le code BGR
► Afficher le texte

Re: [..] Code couleur inversé

Posté : sam. 19 avr. 2014 03:29
par TommyDDR

Code : Tout sélectionner

_GUICtrlListView_SetTextColor
fait un

Code : Tout sélectionner

_SendMessage($hWnd, $LVM_SETTEXTCOLOR, 0, $iColor)
Et MSDN nous informe que :

Code : Tout sélectionner

BOOL SetTextColor(
   COLORREF cr 
);
Et ColorRef :
Remarks

When specifying an explicit RGB color, the COLORREF value has the following hexadecimal form:

0x00bbggrr

The low-order byte contains a value for the relative intensity of red; the second byte contains a value for green; and the third byte contains a value for blue. The high-order byte must be zero. The maximum value for a single byte is 0xFF.
Donc, ce sont les fonctions "_GUICtrlListView_XxxColor" qui fonctionnent en BGR, gimp et les autres fonctionnent bien en RGB.