Veröffentlicht 29. März 200619 j Hallo! Ich weiß dass es hier schonmal eine Frage dazu gab. Habs auch gelesen, nur nicht kapiert. Vielleicht gehts auch einfache in meinem Fall. Also ich habe einen Dialog und in diesem unter eigenschaften ein Menü zugewiesen. Ist es möglich da alternativ zwischen 2 Menüs zu wechseln? Oder wenn dass nicht geht, kann ich in meinem einen Menü den Text ändern? Aber wie? Das Menü ist ja keine Klasse in der ich auf irgendwelche methoden zugreifen könnte. Wäre schön wenn mir jemand helfen könnte....
29. März 200619 j ok... Dann brauche ich ein Objekt vom Typ CMenu. Wie weise ich dann der Klasse CMenue mein IDR_MENU1 zu? EDIT: Ok, habs gefunden... kann ich auch irgendwie den Text einen eintags im Menü ändern?
29. März 200619 j SetMenuItemInfo() hat genau wie das andere nichtmal eine Minute gedauert um das in der MSDN zu finden
29. März 200619 j 'SetMenuItemInfo' : Ist kein Element von 'CMenu' http://msdn.microsoft.com/library/en-us/vclib/html/vclrfcmenusetmenuiteminfo.asp Irgend jemand lügt... Oder bist du unter CE zu Gange? Dann solltest du das schon vorher sagen.
29. März 200619 j http://msdn.microsoft.com/library/en-us/vclib/html/vclrfcmenusetmenuiteminfo.asp Irgend jemand lügt... Oder bist du unter CE zu Gange? Dann solltest du das schon vorher sagen. Ja ich habs auch gelesen. Mein Compiler lügt! Es ist kein CE. Ist eine MFC Dialoganwendung. ich habe nur: CMenu menu; menu.SetMenuContextHelpId(); menu.SetMenuItemBitmaps(); wenn man ein screenshot hochlanden könnte, könnte ichs beweisen....
29. März 200619 j Du kannst auch die globale WinAPI-Funktion SetMenuItemInfo benutzen. Die CMenu-Methode ist nur ein Wrapper um diesen Aufruf.
29. März 200619 j Du kannst auch die globale WinAPI-Funktion SetMenuItemInfo benutzen. Die CMenu-Methode ist nur ein Wrapper um diesen Aufruf. Hä? Verstehe leider nicht. Was ist ein Wrapper? Und wie benutze ich eine globale WinAPI-Funktion? PS: Mahlzeit!!
29. März 200619 j Hä? Verstehe leider nicht. Was ist ein Wrapper?In diesem Fall: Umschlag, Verpackung. Eine objektorientierte Hülle um die prozedurale WinAPI. CMenu::SetMenuItemInfo macht aber nicht viel mehr, als ::SetMenuItemInfo aufzurufen. Das ist ein ziemlich dünner Wrapper. Und wie benutze ich eine globale WinAPI-Funktion?Wie jede andere Funktion auch. Allerdings musst du, wenn Namenskonflikte mit Memberfunktionen bestehen, den Scope-Operator davor setzen. Hier ist das aber nicht der Fall.
29. März 200619 j In diesem Fall: Umschlag, Verpackung. Eine objektorientierte Hülle um die prozedurale WinAPI. CMenu::SetMenuItemInfo macht aber nicht viel mehr, als ::SetMenuItemInfo aufzurufen. Das ist ein ziemlich dünner Wrapper. Wie jede andere Funktion auch. Allerdings musst du, wenn Namenskonflikte mit Memberfunktionen bestehen, den Scope-Operator davor setzen. Hier ist das aber nicht der Fall. Na ich mache jetzt erstmal 2 gleiche Menüs mit unterschiedlichen Texten und jenachdem welchsle ich die einfach. Das andere hört sich nämlich so an, als würde der ganze Mittag dabei drauf gehen
Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.