[API | C++] Affichage pointeur BMP

Signaler
Messages postés
9
Date d'inscription
vendredi 17 novembre 2000
Statut
Membre
Dernière intervention
5 juillet 2005
-
Messages postés
1536
Date d'inscription
samedi 21 décembre 2002
Statut
Membre
Dernière intervention
24 mai 2009
-
Bonjour c'est encore moi,
Cette fois j'ai un problème avec l'affichage d'une image BMP dans une fenêtre. Je suis toujours en API Windows sous Visual C++ 6. Et en fait je récupère toutes les infos d'une image BMP sans problème dans le HEADER et je récupére l'image dans un pointeur (définit unsigned char *FileInputData).
Mon porblème c'est que je veu afficher cette image dans une fenêtre de mon programme. J'ai essayer en utilisant la fonction SetPixel mais je n'arrive pas à réafficher mon image, ma fenêtre reste blanche.
Avez vous une autre fonction a me proposer (en m'expliquant les paramètres a entrer si possible) pour effectuer cet affichage? A savoir que je récupère cette image par pointeur dans une fonction écrite en C pur et que donc je n"utilise pas BMPINFO.

1 réponse

Messages postés
1536
Date d'inscription
samedi 21 décembre 2002
Statut
Membre
Dernière intervention
24 mai 2009
2
Tu ouvres ton image avec LoadBitmap() ou LoadImage() selon les besoins, tu recuperes des infos avec GetObject() et tu affiches ton image a la reception de WM_PAINT:

...
case WM_PAINT:
hdc = BeginPaint(hwnd, &ps);
hdcmem = CreateCompatibleDC(hdc);
SelectObject(hdcmem, hBmp); //hBmp le retour de LoadBitmap() ou LoadImage()
BitBlt(hdc, ...., hdcmem, ..., SRCCOPY);
DeleteDC(hdcmem);
EndPaint(...);
return 0;

....

Si ca ne te convient pas, poste nous ton code pour 'voir' ce qu'on peut y faire.

+2(p - n)