Bonjour,
je voudrais juste charger une image bmp et l'afficher à l'écran. Le
problème se situe pour rendre compatible le dc bmp et le dc
d'affichage. Voici mon code et les erreurs que celui-ci me done (je
programme en VC++6.0) Merci d'avance.
void CAffichageBMPDlg::OnBitmap()
{
HBITMAP hBitmap = (HBITMAP)
::LoadImage(AfxGetInstanceHandle(),"bacterie.bmp",IMAGE_BITMAP,0,0,LR_LOADFROMFILE|LR_CREATEDIBSECTION);
if (hBitmap != NULL)
{
MessageBox("Image chargée","Information",MB_ICONINFORMATION|MB_OK);
}
else
{
MessageBox("Image non chargée!","Erreur",MB_ICONERROR|MB_OK);
}
m_bmpBitmap.Attach(hBitmap);
BITMAP bm;
m_bmpBitmap.GetBitmap(&bm);
CPaintDC dc(this);
CDC dcMem;
dcMem.CreateCompatibleDC(dc);
dcMem.SelectObject(&m_bmpBitmap);
dc->BitBlt(10,10,bm.bmWidth,bm.bmHeight,&dcMem,0,0,SRCCOPY);
}
--------------------Configuration: affichageBMP - Win32 Debug--------------------
Compiling...
affichageBMPDlg.cpp
H:\MES DOCUMENTS\VisualC\Janvier\AffichageBMP\affichageBMPDlg.cpp(194)
: error C2664: 'CreateCompatibleDC' : cannot convert parameter 1 from
'class CPaintDC' to 'class CDC *'
No user-defined-conversion
operator available that can perform this conversion, or the operator
cannot be called
H:\MES DOCUMENTS\VisualC\Janvier\AffichageBMP\affichageBMPDlg.cpp(197)
: error C2819: type 'CPaintDC' does not have an overloaded member
'operator ->'
c:\program files\microsoft
visual studio\vc98\mfc\include\afxwin.h(1012) : see declaration of
'CPaintDC'
H:\MES DOCUMENTS\VisualC\Janvier\AffichageBMP\affichageBMPDlg.cpp(197)
: error C2227: left of '->BitBlt' must point to class/struct/union
Error executing cl.exe.
affichageBMP.exe - 3 error(s), 0 warning(s)