Nixeus
Messages postés192Date d'inscriptionjeudi 18 janvier 2007StatutMembreDernière intervention19 octobre 2020
-
24 janv. 2007 à 14:22
yann_lo_san
Messages postés1137Date d'inscriptionlundi 17 novembre 2003StatutMembreDernière intervention23 janvier 2016
-
25 janv. 2007 à 19:25
Bonjour à tous,
Je début en MFC et j'ai quelques questions de newbie !
Tout d'abord je developpe sous Vsual Studio 2005 Pro.
1) Est il possible d'insérer "simplement" dans une boite de dialogue une image JPG ou PNG ( je sais utiliser BMP)
2) Je souhaiterais ensuite changer la couleur de fond de ma boite de dialogue ( car quand j'insere des BMP, on voit une différence comme je ne peut pas insérer des png transparent ! ), et j'ai trouvé un code aparemment cela:
Je voulais déja savoir si c'est cette méthode à utiliser pour changer la couleur de fond de mes fenetres, ensuite, si il y avais plus simple, et ensuite ou utiliser cette procedure !!
Dans InitDialog?
Désolé de mes question de newbie, mais je suis perdu, je pensais les MFC plus simple que cela !
Je vous remercie tous pour votre aide et vous souhaite une bonne journée
yann_lo_san
Messages postés1137Date d'inscriptionlundi 17 novembre 2003StatutMembreDernière intervention23 janvier 201624 24 janv. 2007 à 15:12
En GDI+ tous les formats sont reconnus par le type Image :
Image img(L"unFichier.jpg");
Pour la couleur de fond du dialog, tu peux utiliser le message WM_ERASEBKGND en surchargeant la méthode :
afx_msgBOOLOnEraseBkgnd(CDC*[ pDC]);
Dans la classe de ton dialog.
Ou afficher directement l'image depuis eraseBackground ou onPaint :
Nixeus
Messages postés192Date d'inscriptionjeudi 18 janvier 2007StatutMembreDernière intervention19 octobre 2020 24 janv. 2007 à 15:52
Je viens de cherche un peu comment faire et je ne comprend pas grande chose :(
Je suis étonné de voir que le c++ est si compliqué par rapport a Delphi !
Je cherche juste comment changer la couleur de fond de mon appli ( la couleur sera la même pour tout mon projet )
J'ai en effet compris qu'il fallais passer par le message WM_ERASEBKGND ,cela dit, je ne vois pas comment l'utiliser dans Visual Studio 2005 et je n'y arrive pas !
Merci encore
Vous n’avez pas trouvé la réponse que vous recherchez ?
yann_lo_san
Messages postés1137Date d'inscriptionlundi 17 novembre 2003StatutMembreDernière intervention23 janvier 201624 24 janv. 2007 à 16:43
Cliques sur la classe de ta boite de dlg dans le volet de droite, puis click sur propriété ou ajout de msg, tu as la liste des msg, tu cliques sur celui que tu veux et la méthode afx_msg On_quelquechose() est rajoutée dans le code .h et .cpp
Tu n'as plus qu'à écrire le code.
Nixeus
Messages postés192Date d'inscriptionjeudi 18 janvier 2007StatutMembreDernière intervention19 octobre 2020 24 janv. 2007 à 19:24
Bon, j'avance :)
J'ai trouvé dans un tuto sur les mfc ceci : On me dit qu'afin de changer la couleur de fond de ma boite de dialogue, je doit placer ceci dans mon initinstance()
yann_lo_san
Messages postés1137Date d'inscriptionlundi 17 novembre 2003StatutMembreDernière intervention23 janvier 201624 25 janv. 2007 à 19:25
Ce ne serait pas plutot dans InitDialog à la place de initInstance, parceque là je ne vois pas le rapport avec l'instance CWinApp.
A mon avis tout ce fait dans la classe de ta boite de dialog.
Quel projet as tu lancé ? SDI, MDI, dialog based ?
Autre chose d'importance, codes tu en native c++ ou en cli .net ?