begin process at 2012 05 29 00:59:19
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Graphique

 > 

Comment modifier le BackColor d'une DialogueBox?


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Comment modifier le BackColor d'une DialogueBox?

jeudi 11 novembre 2004 à 02:03:38 | Comment modifier le BackColor d'une DialogueBox?

coyote

Je developpe sous VC++ 6
Mon projet est de de type MFC Dialog Based.
Selon les clics utisateurs, differentes fenetres apparaissent ou disparaissent.

Mon probleme est que le fond des fenetres doit etre noir. J'ai bien fait un FillRect(..) avec remplissage noir mais lors de l'apparition d'une fenetre, un scintillement blanc de quelques millisecondes apparait avant la coloration en noir du fond. Ceci est du au rafraissiment de la fenetre par la couleur standard lors de l'appel de la methode Show(...);

Comment faire pour modifier la propriete BackColor d'une DialogueBox? (avec code exemple siouplait)

Merci infinnnniiiiment...
jeudi 11 novembre 2004 à 09:31:05 | Re : Comment modifier le BackColor d'une DialogueBox?

AlexMAN

Membre Club
Euh etant donné ke tu es en MFC, je sais pas si ca fonctionnera, mais voila kan mm :

//Tu crées un HBRUSH statik avec la couleur de ton choix
HBRUSH hbr = CreateSolidBrush(RBG(0, 128, 0));
//et a la reception du msg WM_CTLCOLORDLG, tu renvoie cette valeur
case WM_CTLCOLORDLG:
return (BOOL)hbr:

Et pis voila ! Bonne chance

++
jeudi 11 novembre 2004 à 11:48:16 | Re : Comment modifier le BackColor d'une DialogueBox?

vecchio56

Administrateur CodeS-SourceS
Réponse acceptée !
en MFC:
Dans la classe de ta DialogBox:

ajouter une donnée HBRUSH m_hBackground à ta classe et la fonction

afx_msg HBRUSH OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)



HBRUSH CEditColorDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);

if(pWnd == this)
{
pDC->SetBkMode(TRANSPARENT);
return m_hBackGround;
}

return hbr;
}


et bien sur ajouter ON_WM_CTLCOLOR() dans la MESSAGE_MAP()
jeudi 11 novembre 2004 à 12:00:45 | Re : Comment modifier le BackColor d'une DialogueBox?

AlexMAN

Membre Club
ok dsl, j'etais carrement a la masse, dsl..

++
vendredi 12 novembre 2004 à 00:32:55 | Re : Comment modifier le BackColor d'une DialogueBox?

coyote

Parfait
Ca marche nickel.
MERCI BEAUCOUP
mardi 26 février 2008 à 15:35:14 | Re : Comment modifier le BackColor d'une DialogueBox?

dnamboka

Hello ça fais longtemps que ce post a été écrit...J'ai tenté de suivre les étapes. Tout ce passe bien sauf que j'ai une erreur de variable non déclarée (identificateur non non déclaré pour m_hBackGround. Alors pour information je l'ai simplement déclaré dans le .h  correspondant à la classe de ma dialogBox comme ceci : 

public:
    HBRUSH m_hBackground;

Est-ce suffisant ?


mardi 26 février 2008 à 16:54:50 | Re : Comment modifier le BackColor d'une DialogueBox?

dnamboka

Finallement en ajoutant dans la classe de ma DialogBox static devant HBRUSH m_hBackGround, ça passe. Mais je n'ai toujours pas de transparence ... J'ai plus d'erreur mais pas le résultat escompté :s

HBRUSH CTesterDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
static HBRUSH m_hBackGround;

if(pWnd == this)
{
pDC->SetBkMode(TRANSPARENT);
return m_hBackGround;
}
return hbr;
}


Cette discussion est classée dans : modifier, fenetres, backcolor, noir, dialoguebox


Répondre à ce message

Sujets en rapport avec ce message

(win32) Modifier la valeur affichée d'une fenetre [ par mogwai93 ] Bonjour,j'essaie de modifier les valeurs affichees d'un programme B à l'aide d'un programme Ale programme A arrive à recupérer la liste des objets gra TRAITEMENT IMAGE .RAW [ par vadeon ] Bonjour je suis sur un système ou je prend une image d'une camera et celle ci est du format .raw et je me dois d'utilisé l'application Rawdisp L'imag traitement de picturebox facon vb [ par li ] Bon jai fait un aplication windows form dans lequl il y a 830 pictureBox et je changer la meme valeur de chacune d'entre elle.( ex le bg color)Je voul modifier un nom de fichier [ par caro4200 ] Bonjour,J'ai un répertoire qui contient plussieurs fichiers, et je voudrais créer un programme qui parcoure ce répertoire et qui modifie le nom de cha tableau de control [ par li ] je voudrais créé une variable tableau, de controlequand je fais : Control  ^Moncontrol;           / sa marche                        Moncontrol = butt modifier un label dans un thread? [ par catamenia ] bonjour,comment on modifie la valeur d'un label dans un thread en c++?j'ai passé la variable associée a mon thread mais je ne peux pas faire de update Graphiques en C [ par fbogus07 ] Bonjour, Je souhaite implementer des fonctions graphiques dans mon code C ( du genre dessiner des lignes, tracer une courbe a partir d'un tableau...). Comment modifier un raccourci [ par supergrey ] Bonjour, je voudrais pouvoir modifier un raccourcis dans mon programme mais c'est quoi un raccourcis? Est-ce que c'est comme un fichier texte ou rien Codyx [ par SAKingdom ] Ce message s'adresse à tout ceux qui ont les autorisations nécessaire sur codyx pour modifier supprimer et éditer des snippets (Power User 2). Ête vou Dialog et fenètre [ par Dam254 ] Bonjour,Voila, j'ai 3 fenètres dont une principale.Dans cette fenetre principale, j'ai 2 fenetres.Dans la premiere, j'ai une application, type ActiveX


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,889 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales