Bitmap anzeigen
-
Wie kann man auf einem leeren CDialog-Feld, eine Bitmap anzeigen ?
Ich habe folgendes versucht, es tat sich nichts:...CMeinDialog::OnPaint( ...
CPaintDC dc(this);
CBitmap bitmap;
CDC MemDC;
bitmap.LoadBitmap(<Bildname>);
MemDC.CreateCompatibleDC(&dc);
MemDC.SelectObject(&bitmap);
CRect rect;
GetClientRect(&rect);
dc.StretchBlt(0, 0, rect.Width(), rect.Height(), &MemDC, 0, 0, 400, 300, SRCCOPY);Ausserdem wollte ich noch wissen, wie man eine Bitmap-Datei importiert.
-
Ich nochmals. Mit importieren meine ich das Hinzufügen einer Bitmap-Datei
zum Projekt, so dass ich eine Bitmap ID bekomme. zB IDB_BITMAP1. Und keine
Bitmap-Datei im Verzeichnis halten muss.
-
Da, wo du diesen Code-Schnipsel kopiert hast, stand doch mit Sicherheit eine Erklärung dabei. Also, erklär uns doch bitte mal was dieser Code tut...
Mit importieren meine ich das Hinzufügen einer Bitmap-Datei
zum Projekt, so dass ich eine Bitmap ID bekomme. zB IDB_BITMAP1. Und keine
Bitmap-Datei im Verzeichnis halten muss.Also du willst eine Bitmap importieren und sie nicht in einem Verzeichnis haben?!
-
Importieren geht über "Ressourcen", da werden die ID's für Bilder, Icons, Texte usw vergeben
-
Der Code oben dient zur Anzeige einer Bitmap auf einem Fenster. Eine Möglich-
keit ist, ein Picture-Control von der Klasse CStatic zu verwenden, das habe ich versucht allerdings ohne Erfolg:// Auf dem Dialog-Formular ist ein Picture-Control mit der ID: IDC_STATIC.
CStatic* st = (CStatic*)GetDlgItem(IDC_STATIC);
st->SetBitmap(Dateiname);
-
Um eine Bitmap in einer Pic Ctrl anzeigen zu lassen ist noch nicht eine einzige Zeile (selbst geschriebener) Code notwending. Du musst nur in den Einstellungen deiner Pic Ctrl "Type" auf "Bitmap" setzen und dann bei "Image" die ID deiner Bitmap eintragen die du vorher als Ressource hinzugefügt hast.
-
Ich habe mir ein kleines PGM geschrieben, das aus einer BMP-Datei den zugehörigen CODE generiert, den man als Konstanten-Definition in sein Programm einfügen kann.
Hier ein Beispielhttp://www.hkressedd.de/bilder/w7.bmp
// Y:\w\w7.h const unsigned char xxxxxx [30054] = { 0X42,0X4D,0X66,0X75,0X00,0X00,0X00,0X00,0X00,0X00,0X36,0X00,0X00,0X00,0X28,0X00, // 0000 0X00,0X00,0X64,0X00,0X00,0X00,0X64,0X00,0X00,0X00,0X01,0X00,0X18,0X00,0X00,0X00, // 0010 0X00,0X00,0X30,0X75,0X00,0X00,0X13,0X0B,0X00,0X00,0X13,0X0B,0X00,0X00,0X00,0X00, // 0020 0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, // 0030 ::: hier weiterer Code 0XD8,0XDC,0XD2,0XD8,0XDB,0XD0,0XD8,0XD8,0XD1,0XD4,0XD0,0XCE,0XC6,0XD4,0XD5,0XCB, // 74F0 0XDE,0XDA,0XD9,0XE5,0XE0,0XE2,0XEA,0XE2,0XED,0XF1,0XE8,0XF5,0XFB,0XF0,0XFF,0XFF, // 7500 0XF7,0XFF,0XFF,0XFA,0XFF,0XFF,0XF9,0XFF,0XFF,0XFA,0XFB,0XFF,0XFE,0XFB,0XFF,0XFF, // 7510 0XFB,0XFF,0XFF,0XF9,0XFF,0XFF,0XF8,0XFF,0XFF,0XFB,0XF8,0XFE,0XFF,0XF5,0XFE,0XFF, // 7520 0XF9,0XFF,0XFE,0XFD,0XFF,0XFC,0XFF,0XFF,0XFC,0XFF,0XFD,0XFE,0XFF,0XFC,0XFF,0XFF, // 7530 0XFC,0XFF,0XFF,0XFE,0XFF,0XFD,0XFF,0XFB,0XFD,0XFF,0XF5,0XFB,0XFF,0XF2,0XFD,0XFF, // 7540 0XF8,0XFD,0XFF,0XFF,0XFF,0XFA,0XFF,0XFF,0XF9,0XFF,0XFF,0XFD,0XFF,0XFF,0XFF,0XFF, // 7550 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF // 7560 };
-
....
0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XFF,0XFF,0XFD,0XFF,0XFF, // 0860
0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFE,0XFF,0XFF,0XFE,0XFF,0XFF, // 0870
0XFE,0XFF,0XFD,0XFF,0XFF,0XF8,0XFA,0XFA,0XFA,0XFF,0XFD,0XFD,0XFF,0XFC,0XFF,0XFF, // 0880
0XFC,0XFF,0XFE,0XF9,0XFF,0XFD,0XF6,0XEA,0XDB,0XD2,0X7A,0X59,0X49,0X45,0X1A,0X07, // 0890
0X57,0X2A,0X15,0X59,0X28,0X12,0X5B,0X25,0X0C,0X69,0X31,0X14,0X7E,0X42,0X24,0X9F, // 08A0
0X60,0X3E,0X7A,0X36,0X11,0X78,0X33,0X0B,0X78,0X33,0X08,0X7B,0X34,0X08,0X7B,0X35, // 08B0
0X06,0X7C,0X34,0X05,0X7C,0X34,0X05,0X7F,0X34,0X06,0X84,0X36,0X08,0X83,0X35,0X07, // 08C0
0X80,0X33,0X05,0X80,0X33,0X05,0X80,0X35,0X07,0X81,0X39,0X0A,0X82,0X3C,0X0D,0X81, // 08D0
0X3D,0X10,0X7D,0X3C,0X0F,0X76,0X37,0X0B,0X72,0X34,0X0B,0X72,0X35,0X0D,0X6E,0X33, // 08E0
0X0C,0X6A,0X30,0X0C,0X70,0X36,0X12,0X75,0X3F,0X1C,0X68,0X35,0X14,0X6E,0X3F,0X1F, // 08F0
0X7F,0X50,0X31,0X91,0X65,0X48,0XA9,0X81,0X65,0XCA,0XA5,0X8B,0XE9,0XC9,0XB2,0XFD, // 0900
0XE2,0XCD,0XFF,0XFD,0XEB,0XFF,0XFF,0XF0,0XFF,0XFF,0XF4,0XFF,0XFF,0XF7,0XFF,0XFF, // 0910
0XF6,0XFF,0XFB,0XF4,0XFD,0XF9,0XF4,0XFC,0XF9,0XF5,0XFE,0XFB,0XF7,0XFB,0XF9,0XF8, // 0920
0XFE,0XFC,0XFB,0XFF,0XFF,0XFE,0XFF,0XFF,0XFE,0XFC,0XFD,0XFB,0XFF,0XFD,0XFD,0XFF, // 0930
0XFF,0XFF,0XFF,0XFE,0XFF,0XFD,0XFF,0XFF,0XFF,0XFE,0XFF,0XFD,0XFF,0XFF,0XFC,0XFD, // 0940
0XFF,0XFC,0XFD,0XFF,0XFD,0XFE,0XFF,0XFF,0XFE,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF, // 0950
0XFA,0XFF,0XFF,0XF6,0XFF,0XFF,0XF6,0XFF,0XFF,0XFA,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF, // 0960
0XFE,0XFF,0XFF,0XFE,0XFF,0XFF,0XFE,0XFF,0XF8,0XFF,0XFF,0XF4,0XFF,0XFF,0XF4,0XFF, // 0970
0XFE,0XF8,0XFF,0XFE,0XFF,0XFF,0XFC,0XFF,0XFF,0XFC,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, // 0980
0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFB,0XFF,0XFF,0XFB,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, // 0990
0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFE,0XFF,0XFF,0XFE,0XFF,0XFF,0XFE,0XFF,0XFC,0XFE, // 09A0
0XFE,0XFD,0XFF,0XFF,0XFC,0XFF,0XFD,0XFE,0XFF,0XFB,0XFE,0XFB,0XF7,0XFF,0XFF,0XFB, // 09B0
....also das kann nicht stimmen
-
deejey schrieb:
Importieren geht über "Ressourcen", da werden die ID's für Bilder, Icons, Texte usw vergeben
Danach fügst du ein PictureContol ein und setzt ID und Image auf die oben importierte ID und Type auf Bitmap.
Das sollte es gewesen sein und es wird angezeigt.Vergessen:
Die Bitmap plazierst du einfach in \res
-
Kann man für CDialog auch Hintergrundbilder hinzufügen ? Wenn Ja wie ?
-
Schon mal was von google gehört?!
-
MFC-User schrieb:
Kann man für CDialog auch Hintergrundbilder hinzufügen ? Wenn Ja wie ?
Die Frage zeigt mir, daß du es nichtmal ausprobiert hast.
-
Ihr habt ja recht, Beim Google habe ich doch noch was gefunden.
Trotzdem sollte der Umgangston etwas besser sein ...
-
MFC-User schrieb:
Trotzdem sollte der Umgangston etwas besser sein ...
Was war denn daran unfreundlich?
Sei dankbar, sonst spielen wir hier nächtesmal nicht die neueste Kuschelrock-CD für dich.
Du hast Hilfe bekommen, oder nicht?
-
Jaja ist ja OK(). Bei Google habe ich folgendes gefunden. Nun bin ich kein
Spezialist für Links-Hinzufügen in diesem Text ( Man könnte mir das mal zeigen )
Also Google, Suchbegriff: "CDialog Hintergrundbild" Dann auf ... Wer weis was ..
Da steht ein funktionierender Text. Danke ...