ketchupy45
Messages postés101Date d'inscriptiondimanche 1 mai 2005StatutMembreDernière intervention13 décembre 2007
-
8 oct. 2005 à 21:36
vecchio56
Messages postés6535Date d'inscriptionlundi 16 décembre 2002StatutMembreDernière intervention22 août 2010
-
9 oct. 2005 à 10:00
Bonjour, voila j'ai une petit application (qui sert aps à grand chose
pour l'instant) où je change la couleur d'un rectangle en cliquant
dessus. Ca amrche tres bien en gris, blanc et gris foncé, mais je
voudrais le faire avec un code couleur RGB (red, green, blue). Je fais
une applivcation SDI avec visual studio .net 2003 où je
rajoute/remplace :
Est ce que vous pourriez m'indiquer comment faire (j'ai essayer
(R,G,B)_BRUSH en remplaçant RG B par 250 0 0 mais ça amrche pas). Merci
d'avance de votre aide qui me sera precieuse pour une application que
je compte développer.
vecchio56
Messages postés6535Date d'inscriptionlundi 16 décembre 2002StatutMembreDernière intervention22 août 201014 8 oct. 2005 à 21:40
Tu n'a pas de stock object pour chaque couleur. Pour d'autres couleurs, tu dois créer toi même un brush, avec CreateSolidBrush
En MFC c'est la classe CBrush qui encapsule HBRUSH, le constructeur te permet de spécifier la couleur:
CBrush brush(255, 0, 0); va te créer un CBrush rouge
ketchupy45
Messages postés101Date d'inscriptiondimanche 1 mai 2005StatutMembreDernière intervention13 décembre 20071 8 oct. 2005 à 21:49
Je te remercie beaucoup mais est ce que tu pourrais me donner plus de précision ? par exemple en modifiant les parties qu'il faut sur le code que j'ai mis
vecchio56
Messages postés6535Date d'inscriptionlundi 16 décembre 2002StatutMembreDernière intervention22 août 201014 9 oct. 2005 à 10:00
La composante en rouge va de 0 à 255 (0xFF). Comme j'incrémente a chaque fois, je vais finir par dépasser 255, donc le & permet de rester dans l'intervalle (en fait m_nColor passera à 0 après 255). Tu cliques 256 fois et tu verra que ton carré redevient noir