Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

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....

Geschrieben

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?

Geschrieben
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.... :)

Geschrieben
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!!

Geschrieben
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.
Geschrieben
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 Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...