Couleur des controles

Signaler
Messages postés
137
Date d'inscription
lundi 13 décembre 2004
Statut
Membre
Dernière intervention
16 juillet 2007
-
Messages postés
1910
Date d'inscription
vendredi 18 juin 2004
Statut
Modérateur
Dernière intervention
14 novembre 2014
-
salut a tous,

voila j'ai un p'tit pb. j'arrive a modifier la couleur de fond d'une
fentre mais lorsque j'essaie de le faire pour un controle contenu dans
cette fenetre ca marche



case WM_CREATE:

{


stat =
CreateWindowEx(0,"STATIC","Beaucoup",WS_CHILD|WS_VISIBLE|SS_LEFT,5,5,200,30,fenetre,(HMENU)ID_STATIC,hInstance,NULL);



}

case WM_CTLCOLORSTATIC:

{

SetBkMode((HDC)wParam, OPAQUE);


SetBkColor((HDC)wParam,
COLOR_BACKGROUND);


break;

}



quelq'un peut me dire ce qui cloche SVP ?

en fait j'ai envie que le controle aies la meme couleur de fond que la fenetre.


merci a tous

4 réponses

Messages postés
627
Date d'inscription
mercredi 16 juin 2004
Statut
Membre
Dernière intervention
24 juillet 2011

oui lol, à vue d'oeil je sais ce qui cloche
il faut que tu retournes un HBRUSH casté en long :)
Tiens un exemple :

case WM_CTLCOLORSTATIC:
{
SetBkMode((HDC)wParam, OPAQUE);

HBRUSH hBrush;
hBrush = CreateSolidBrush(COLOR_BACKGROUND);

return (long) hBrush;
break;
}

euh COLOR_BACKGROUND doit etre de type COLORREF

Tu peux obtenir un COLORREF avec la fonction RGB() (voir sur msdn)

Bonne journée et bonne continuation

Gendal67, Dev-C++ 4.9.9.1, J'adore cppfrance!! :-))
Messages postés
21042
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
25
Attention de ne pas faire un appel CreateSolidBrush() à chaque event WM_CTLCOLORSTATIC sinon le prog va tomber en manque de ressources.

ciao...
BruNews, MVP VC++
Messages postés
627
Date d'inscription
mercredi 16 juin 2004
Statut
Membre
Dernière intervention
24 juillet 2011

Oui oui tout fait, il doit etre fait dans le message WM_INITDIALOG si je ne me trompe pas ;)

Gendal67, Dev-C++ 4.9.9.1, J'adore cppfrance!! :-))
Messages postés
1910
Date d'inscription
vendredi 18 juin 2004
Statut
Modérateur
Dernière intervention
14 novembre 2014
13
Salut,

Voici un code source à ce sujet:

Couleurs et transparence des controles :

http://www.cppfrance.com/code.aspx?id=27889