Changer la couleur d'un static [Résolu]

mogwai93 361 Messages postés mardi 31 décembre 2002Date d'inscription 19 mars 2015 Dernière intervention - 25 oct. 2005 à 21:27 - Dernière réponse : racpp 1910 Messages postés vendredi 18 juin 2004Date d'inscription 14 novembre 2014 Dernière intervention
- 27 oct. 2005 à 15:27
Bonjour,



j'aimerais modifier la couleur d'un objet static et la couleur de fond.



pour le moment, je n'ai trouvé qu'avec SetTextColor et SetBkColor

sauf que ca ne fonctionne qu'avec TextOut



mon static a été créé avec la méthode CreateWindow

est-ce qu'il existe un message à envoyer à l'objet static ?

ou une methode de contournement ?



merci



PS: je programme en win32 avec Devcpp
Afficher la suite 

Votre réponse

6 réponses

Meilleure réponse
BruNews 21054 Messages postés jeudi 23 janvier 2003Date d'inscription 7 novembre 2014 Dernière intervention - 25 oct. 2005 à 23:43
3
Merci
suffit d'un code dans ce genre:

case WM_CTLCOLORSTATIC:
if(GetWindowLong((HWND)lParam, GWL_ID) == IDST_COLOR) {
SetBkMode((HDC) wParam, TRANSPARENT);
SetTextColor((HDC) wParam, clrT);
return (BOOL) hbr;
}
return 0;

ciao...
BruNews, MVP VC++

Merci BruNews 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 93 internautes ce mois-ci

Commenter la réponse de BruNews
Meilleure réponse
BruNews 21054 Messages postés jeudi 23 janvier 2003Date d'inscription 7 novembre 2014 Dernière intervention - 26 oct. 2005 à 15:32
3
Merci
Exemple ici:
CHOIX COULEURS (WIN32, NON MFC)
http://www.cppfrance.com/code.aspx?id=10501

ciao...
BruNews, MVP VC++

Merci BruNews 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 93 internautes ce mois-ci

Commenter la réponse de BruNews
mogwai93 361 Messages postés mardi 31 décembre 2002Date d'inscription 19 mars 2015 Dernière intervention - 26 oct. 2005 à 15:08
0
Merci
merci,
ca fonctionne (en renseignant hbr, avec par exemple
hbr = CreateSolidBrush(RGB(0, 0, 255));
si l'on veut un fond bleu)

par contre, comment faire pour changer la couleur "sur demande", (clic sur un bouton par exemple) ?
car l'evenement WM_CTLCOLORSTATIC n'est appelé qu'à la création et au réaffichage de l'objet.

merci
Commenter la réponse de mogwai93
BruNews 21054 Messages postés jeudi 23 janvier 2003Date d'inscription 7 novembre 2014 Dernière intervention - 26 oct. 2005 à 15:31
0
Merci
C'est appelé à chaque repaint, que soit du à un changement du texte ou un appel explicite à InvalidateRect.

ciao...
BruNews, MVP VC++
Commenter la réponse de BruNews
mogwai93 361 Messages postés mardi 31 décembre 2002Date d'inscription 19 mars 2015 Dernière intervention - 26 oct. 2005 à 16:00
0
Merci
c'est bon, ca fonctionne !

merci
Commenter la réponse de mogwai93
racpp 1910 Messages postés vendredi 18 juin 2004Date d'inscription 14 novembre 2014 Dernière intervention - 27 oct. 2005 à 15:27
Commenter la réponse de racpp

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.