Bitmap als Resource

AckiB

Mitglied
Hi,
ich lade eine Bitmap und zeige sie an (mit Win API)
nun möchte ich die Bitmap(s) aber nicht von Festplatte laden, sondern als Resource in das Programm integrieren !
Ich brauche aber einen HDC-Pointer zu dieser Bitmap (weil BitBlt dies benötigt)...

Ich benutze Dev-Cpp !
Leider habe ich aber keine Ahnung, wie das mit den Resource-Dateien funktioniert...

CU, Acki
 
Hallo,

lege ein Handle der Bitmap und einen Device Context an
z.B.
HBITMAP hBM;
HDC hBDC;

lade dann die Bitmap aus den Resourcen in hBM hinein
und benutze

SelectObject(hBDC,hBM);

so wird das Bild in den Device Context geladen und BitBlt kann genutzt werden :)
 
Flegmon hat gesagt.:
lade dann die Bitmap aus den Resourcen in hBM hinein

scheint einfach zu sein, aber wie genau lade ich die Bitmap aus den Resourcen ?

resource file:
Code:
picture BITMAP DISCARDABLE "Small.bmp"

main file:
Code:
int main(int argc, char **argv) {
  HBITMAP hBM;
  // how to load the resource "picture" into this handle 
  
}
 
Hallo,

Hier ist ein Beispiel:

HBITMAP hBM;
HDC hBDC;

hBM = LoadBitmap( hInstance, MAKEINTRESOURCE(picture) );

// Wenn bei Dev-cpp der Source Code benutzt wird, der beim erstellen eines Windows
// Projekts angezeigt wird, ist hInstance hThisInstance genannt

SelectObject( hBDC, hBM );

Jetzt kann BitBlt benutzt werden. ;-]

Es gibt noch andere möglichkeiten eine Bitmap aus den Resourcen zu laden.
Benutze die Updatefunktion von Dev-cpp um dir die Windows Hilfe Datei herunterzuladen.
Dort sind viele Funktionen enthalten.
(oder einfach msdn :) )
 
Zurück