Image sur un bouton [MFC]

[Résolu]
Signaler
Messages postés
18
Date d'inscription
jeudi 6 mars 2003
Statut
Membre
Dernière intervention
22 février 2007
-
Messages postés
18
Date d'inscription
jeudi 6 mars 2003
Statut
Membre
Dernière intervention
22 février 2007
-
Salut , j'utilise visual studio .net 2003 et les MFC.



j'utilise ce bout de code pour afficher une iamge sur un bouton et ça marche bien :



HWND hBouton = ::GetDlgItem(this->m_hWnd,IDC_BUTTON1);

this->hImage = ::LoadImage(this->hInst,MAKEINTRESOURCE(IDB_FONT),



IMAGE_BITMAP, 0, 0, LR_CREATEDIBSECTION);



::SendMessage(hBouton, BM_SETIMAGE, (WPARAM)IMAGE_BITMAP, (LPARAM)(HANDLE)hImage);



Le soucis est que j'utilise une image dans les ressources et vu que
j'arrive pas à mettre une .bmp dans les ressources j'aimerais loader
une image avec son PATH. J'ai une classe CPicture qui fait ça mais
j'arrive pas à faire le lien entre le code au dessus et la classe
CPicture. J'utilise la classe CPicture pour mettre une image en fond
d'une CDialog en fait. Après j'ai trouvée une fonction sur ce site qui
load une image :



HBITMAP CYEPDlg::LoadAnImage(char* FileName)

{

WCHAR wpath[MAX_PATH];

MultiByteToWideChar(CP_ACP, 0, FileName, -1, wpath, MAX_PATH);



IPicture* pPic;

OleLoadPicturePath(wpath, NULL, NULL, NULL, IID_IPicture,(LPVOID*)&pPic);





HBITMAP hPic = NULL;

pPic->get_Handle((UINT*)&hPic);



HBITMAP hPicRet = (HBITMAP)CopyImage(hPic, IMAGE_BITMAP, 0, 0, LR_COPYRETURNORG);



pPic->Release();





return hPicRet;

}



mais la ligne soulignée fait planté le programme.

Si quelqu'un pouvait m'aider svp !! En gros j'aimerais mettre une image
sur un bouton l'image n'étant pas dans les ressources . Merci par
avance !

1 réponse

Messages postés
18
Date d'inscription
jeudi 6 mars 2003
Statut
Membre
Dernière intervention
22 février 2007

http://www.developpez.net/forums/viewtopic.php?t=345822



On m'a répondu sur un autre forum