Bitmaps mit mehr als 256 Farben im Fenster zeichnen
-
Hi!
Wie kann ich Bilder mit mehr als 256 aus der Ressource laden und im Fenster ausgeben?
Ich mach es momentan so, aber er unterstützt so nur 256 Farben:res.rc
HALLO BITMAP "hallo.bmp"output.cpp
HBITMAP bmpFIGURE; bmpFIGURE = LoadBitmap(GetModuleHandle(NULL),"HALLO"); hDC=GetDC(hwnd); hMemDC = CreateCompatibleDC(hDC); SelectObject(hMemDC,bmpFIGURE); BitBlt(hDC,0,0,50,50,hMemDC,0,0,SRCPAINT);Wäre nett, wenn mir jemand einfach einen kurzen sourcecode posten könnte. Hab mich in der MSDN natürlich auch schon mehrfach umgeschaut, aber ich raff nicht wie man mit DIBitmaps umgeht bzw sie auf den Bildschirm zeichnet/lädt/in die res bringt/ usw...
danke
chris90
-
Indem du die hallo.bmp mit mehr als 256 Farben speicherst

Evtl. möchtest du auch lieber SRCCOPY als SRCPAINT nehmen ?(Der MSVC6 kann nur Bitmaps mit >256 Farben nicht anzeigen, aber trotzdem kann man sie verwenden ;D)
-
haha du strolch. sehr witzig. leider werden meine schönen 24bit-bmps alle nach 256 farben degradiert bei der ausgabe...
wie beheb ich das?
-
Indem Du anstatt LoadBitmap halt LoadImage verwendest?
-
LoadBitmap() kann auch 24-Bit Bitmaps laden (sofern man bei der graka nicht 256 farben eingestellt hat...)
Hat das nen speziellen Grund warum du SRCPAINT statt SRCCOPY nimmst ?