Couleur de fond boite de dialogue

dambeaufort Messages postés 60 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 17 septembre 2004 - 31 mars 2004 à 16:32
cs_hm1964 Messages postés 36 Date d'inscription dimanche 25 janvier 2004 Statut Membre Dernière intervention 17 juin 2004 - 4 avril 2004 à 08:35
Bonjour,

Pourriez vous m'indiquer une méthode afin de changer la couleur de fond d'une boite de dialog. Je travaille en MFC sous visual C++.
Si vous pouvez expliquer moi la fonction a utiliser et ou la mettre dans le programme car j'ai une dizaine de boite de dialog qui se succede. C pour ca que j'aimerais changer la couleur de certaine.

Merci d'avance

1 réponse

cs_hm1964 Messages postés 36 Date d'inscription dimanche 25 janvier 2004 Statut Membre Dernière intervention 17 juin 2004
4 avril 2004 à 08:35
Dans la classe de la fenêtre tu récupère le message WM_CTLCOLOR en déclanchant un OnCtlColor.

Dans cette fonction tu fais :
HBRUSH Cmydialog::OnCtlColor(CDC*pdc,CWnd*pWnd,UINT nCtlColor)
{
if (nCtlColor==CTLCOLOR_EDIT)
{
pDC->SetBlkColor(RGB(255,255,0)); //ici une couleur
return m_maCouleur; //HBRUH membres
}
if (nCtlColor==CTLCOLOR_DLG1)
{
pDC->SetBlkColor(GB(255,0,0)); //couleur
return m_monAutreCouleur
}
// ..... pour chaque dialog
return CDialog::OnCtlColor(pDC,pWnd,nCtlcolor);
//return indispensable pour les autres dialogs !
}

J'espère que ça t'aidera
bonne journée

Jean-Philippe
0
Rejoignez-nous