Probleme mit Resourcen (Menu)
-
Hallo ich lesen zur Zeit das Buch:
"Windows Programmierung Das Entwicklerhandbuch zur Win32 API" von Charles Petzoldund bin nun zu dem Punkt gekommen bei dem man Menus per Resourcen einbindet.
Ich benutze: "Pelles C for Windows" um meine Resourcen zu erstellen
Und Code::Blocks als IDEWenn ich jetzt das Menu:
ICONDEMO MENUEX BEGIN POPUP "Datei", 0, 0, 0 BEGIN MENUITEM "Neu", IDM_FILE_NEW, 0, 0 MENUITEM "Öffnen", IDM_FILE_OPEN, 0, 0 MENUITEM "Speichern", IDM_FILE_SAVE, 0, 0 MENUITEM "Speichern unter", IDM_FILE_SAVE_AS, 0, 0 MENUITEM "", 0, 0|MFT_SEPARATOR, 0 MENUITEM "Beenden", IDM_FILE_CLOSE, 0, 0 END POPUP "Bearbeiten", 0, 0, 0 BEGIN MENUITEM "Rückgängig", IDM_EDIT_UNDO, 0, 0 MENUITEM "", 0, 0|MFT_SEPARATOR, 0 MENUITEM "Ausschneiden", IDM_EDIT_CUT, 0, 0 MENUITEM "Kopieren", IDM_EDIT_COPY, 0, 0 MENUITEM "Einfügen", IDM_EDIT_PASTE, 0, 0 MENUITEM "Löschen", IDM_EDIT_CLEAR, 0, 0 END POPUP "Hintergrund", 0, 0, 0 BEGIN MENUITEM "Weiß", IDM_BKGND_WHITE, 0, 0|MFS_CHECKED MENUITEM "Hellgrau", IDM_BKGND_LTGRAY, 0, 0 MENUITEM "Grau", IDM_BKGND_GRAY, 0, 0 MENUITEM "Dunkelgrau", IDM_BKGND_DKGRAY, 0, 0 MENUITEM "Schwarz", IDM_BKGND_BLACK, 0, 0 END POPUP "Timer", 0, 0, 0 BEGIN MENUITEM "Start", IDM_TIMER_START, 0, 0 MENUITEM "Stop", IDM_TIMER_STOP, 0, 0|MFS_GRAYED END POPUP "Hilfe", 0, 0, 0 BEGIN MENUITEM "Hilfe...", IDM_APP_HELP, 0, 0 MENUITEM "Info über MENUDEMO", IDM_APP_ABOUT, 0, 0 END ENDmit
wndclass.lpszMenuName = "ICONDEMO"einbinden will klappts nicht
wenn ich jetzt aber
die 2 Zeilen mit "MFT_SEPARATOR" löschen und
"MFS_GRAYED" + "MFS_CHECKED" entfernenDann klappts wunderbar aber warum??
Es kommt auch keine Compiler Fehler:
Switching to target: default Compiling: MENUDEMO.rc Compiling: MENUDEMO.c Linking executable: C:\Dokumente und Einstellungen\Pinguin\Eigene Dateien\C-Programme\Win 32 API\Beispiele Buch\Kapitel 10\MENUDEMO\MENUDEMO.exe Process terminated with status 0 (0 minutes, 0 seconds) 0 errors, 0 warningsDanke schon mal Gast
-
Unregistrierter Gast schrieb:
mit
wndclass.lpszMenuName = "ICONDEMO"einbinden will klappts nicht
also ich mach das immer so:
wndclass.lpszMenuName = MAKEINTRESOURCE(ICONDEMO);und bei MS Resourceeditor heißt es "CHECKED" und "GRAYED", vieleicht einfach mal probieren?