Insérer un fichier png sur son IHM avec visual 2005

Nixeus Messages postés 192 Date d'inscription jeudi 18 janvier 2007 Statut Membre Dernière intervention 19 octobre 2020 - 4 févr. 2007 à 19:24
Nixeus Messages postés 192 Date d'inscription jeudi 18 janvier 2007 Statut Membre Dernière intervention 19 octobre 2020 - 9 févr. 2007 à 16:54
Bonsoir à tous !

     Je construit actuellement une IHM pour une mfc et souhaiterais y mettre des images de types PNG et non BMP, je souhaiterais connaître s'il vous plait le moyen pour arriver à ses fins ( simple si possible, je débute en MFC !! ).

     Par ailleur, y a t-il possibilité comme en construisant des programmes en .net, de rétressir ou d'agrandir par "étirement" les images sur les IHM ( aparemment pas possible en C++ sous visual Studio 2005 Pro ).

Merci à tous, je vous souhaite une bonne fin de dimanche !

7 réponses

gege1024 Messages postés 138 Date d'inscription vendredi 10 janvier 2003 Statut Membre Dernière intervention 27 janvier 2009
4 févr. 2007 à 19:31
essai la lib CxImage.(google est ton ami).
elle gere bcp de format, de plus elle est facile à installer est utiliser.

apres pour inserer une image png, il faudra importer une ressource (ton image), et l'afficher ensuite comme une bmp.

gege
0
racpp Messages postés 1909 Date d'inscription vendredi 18 juin 2004 Statut Modérateur Dernière intervention 14 novembre 2014 17
4 févr. 2007 à 19:58
Salut,
Je pense que l'interface IPicture permet d'afficher des images au format PNG. Sinon, il y'a aussi GDI+.
Grâce à IPicture, on peut étirer ou rétrécir l'image affichée en jouant sur les valeurs des paramètres passés à la methode Render().
0
vecchio56 Messages postés 6535 Date d'inscription lundi 16 décembre 2002 Statut Membre Dernière intervention 22 août 2010 14
4 févr. 2007 à 21:30
Je vote aussi pour CxImage (utiliser IPicture, faut vraiment avoir envie, et je crois qu'elle ne gère que gif et jpg)

_____________________________________
0
yann_lo_san Messages postés 1137 Date d'inscription lundi 17 novembre 2003 Statut Membre Dernière intervention 23 janvier 2016 26
4 févr. 2007 à 21:40
Salut,
Pour MFC, le plus simple est CImage :

#include    // ou sans MFC
#include

CImage img;
img.LoadImage("img.png");
CDC* pdc = CDC::FromHandle(img.GetDC());

bitBlt(...)
strechtBlt(...)
ect...
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Nixeus Messages postés 192 Date d'inscription jeudi 18 janvier 2007 Statut Membre Dernière intervention 19 octobre 2020
4 févr. 2007 à 22:50
Et pour la CImage, le code se place dans la classe OnInitDialog ?
Doit on placer sur la boite de dialogue un "picture control" ?

Désolé de mes question de newbie, mais je commence en MFC ! Merci à tous
0
yann_lo_san Messages postés 1137 Date d'inscription lundi 17 novembre 2003 Statut Membre Dernière intervention 23 janvier 2016 26
5 févr. 2007 à 22:47
Tu peux mettre un picture :
HWND hPic = GetDlgItem(IDC_PICTURE);

Ou dessiner sur le dlg directement dans WM_PAINT avec
OnPaint()

En fait partout ou tu peux récuperer un CDC (HDC)
0
Nixeus Messages postés 192 Date d'inscription jeudi 18 janvier 2007 Statut Membre Dernière intervention 19 octobre 2020
9 févr. 2007 à 16:54
Merci beaucoup pour ton adie, je vais tester dés que j'ai le temps ! Merci encore
0
Rejoignez-nous