Menu mit Bitmaps
-
Hi,
Ich habe ein Problem, ich habe folgenden Codeschnippsel bekommen.
Der lädt ein Bitmap und setzt es vor ein Menuitem, aber die Bitmaps müssen als Datei vorliegen!
Wie mache ich es, dass das Bitmap in der Resource der Anwendung mit drin ist?
Ich verwende den lcc-win32.
Hier der Code:// zuerst das Bild laden
hbitmap1 = LoadImage (hInst, "pic01.bmp", IMAGE_BITMAP, 0, 0, LR_LOADFROMFILE);
if (!hbitmap1)
MessageBox (hwnd, "hbitmap1 konnte pic01.bmp nicht laden!", "Fehler!", MB_ICONSTOP|MB_OK);// dann das Handle für das Submenü ermitteln
hmenu = GetMenu (hwnd);
hmenu = GetSubMenu (hmenu, 0);// dann das Bild als Checkbox im MenuItem plazieren
if (!SetMenuItemBitmaps (hmenu, 0, MF_BYPOSITION, hbitmap1, hbitmap1))
{
MessageBox (hwnd, "Kein Menu-Bitmap", " ", MB_OK);
}Bitte helft mir!
MfG
Sandra
-
Einfach bei LoadImage bei lpszName angeben. (Ggf. brauchst du noch MAKEINTRESOURCE)
-
Hi,
Das habe ich auch schon versucht es geht nicht!
Ich habe in der resource folgendes stehen:
122 BITMAP "c:\lcc\prog\pic06.bmp"
Stimmt das so?
Ich weiß nicht was ich noch alles anders machen soll.
-
Hast du VC++?
Ich dachte, du willst es als Resource, warum ein externer Pfad?
-
Hallo flenders,
Ich schrieb doch das ich den lcc-win32 verwende!
MfG
Sandra
-
Probier's mal so:
122 BITMAP pic06.bmp
und im Code dann bei lpszName folgendes:
MAKEINTRESOURCE(122)
-
Geht immer noch nicht!
Ich könnte ausflippen.
-
Bekommst du eine Fehlermeldung beim Kompilieren oder beim Ausführen, oder wie genau sieht das Nicht-Funktionieren aus?
-
Die Messagebox mit dem Inhalt:"hbitmap1 konnte pic01.bmp nicht laden!" erscheint!
Ich habe mir den ResHacker downgeloadet und meine Anwendung geöffnet die Bitmaps werden angezeigt.
Es muss also ein Problem beim Laden sein!
Was kann man noch alles machen?
-
Hast du beim Laden der Resource hinten das LR_LOADFROMFILE rausgemacht
-
Ich habe folgendes daraus gemacht:
LoadImage (NULL, MAKEINTRESOURCE(OBM_PIC01), IMAGE_BITMAP, 0, 0, LR_DEFAULTCOLOR);
So stand es in der MSDN.
-
Wenn du aus einer Resource lädst, muss das Instance-Handle angegeben werden.
-
DANKE!
-
Und wie setze ich ein Bitmap vor das menu IDMAINMENUB ?
Das ist nur in der Resource!