Image sur un bouton [MFC] [Résolu]

cs_mfrai02 18 Messages postés jeudi 6 mars 2003Date d'inscription 22 février 2007 Dernière intervention - 23 mai 2005 à 15:11 - Dernière réponse : cs_mfrai02 18 Messages postés jeudi 6 mars 2003Date d'inscription 22 février 2007 Dernière intervention
- 24 mai 2005 à 17:15
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 !
Afficher la suite 

Votre réponse

1 réponse

cs_mfrai02 18 Messages postés jeudi 6 mars 2003Date d'inscription 22 février 2007 Dernière intervention - 24 mai 2005 à 17:15
+3
Utile
http://www.developpez.net/forums/viewtopic.php?t=345822



On m'a répondu sur un autre forum
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de cs_mfrai02

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.