013
11.04.2003, 11:46 Uhr
Volle
|
Hallo,
das Problem ist nicht GetMenuString. Es ist egal, ob m_MyMenu eine Membervariable ist oder nicht. Es muss nur gewährleistet sein, dass die Variable eine gültige Instanz von CMenu enthält. Sonst kann der Aufruf der Memberfunktion GetMenuString nicht funktionieren. Deshalb musst die Instanz vorher mit LoadMenu laden. Als Parameter musst du Loadmenu die ID des Menüs mitgeben. Nicht irgendeine beliebige Zahl oder die ID des Menueintrages. So wie es FloSoft ja auch schon gesagt hat. Nehmen wir mal an, du hast das Menü "Datei" mit der ID 100 und dem Untereintrag "Öffnen" mit der ID 101. Dann sollte dein Code in etwa so aussehen:
C++: |
CString entry; CMenu menuBuf; menuBuf.LoadMenu(100); ASSERT(menuBuf); menuBuf.GetMenuString(101, entry, MF_BYCOMMAND);
|
Das sollte schon gehen...
Gruß, Volle. |