Menüänderungen mit MFC

Hi,

ich schreibe gerade ein Programm, das die MFC verwendet.
Das Programm hat ein Dokument und vier Views. Zur Laufzeit
sollen dem Menü des Hauptfenster weitere Einträge verpasst
werden. Leider sind diese zusätzlichen Menüeinträge nur
dann sichtbar, wenn die View aktiv ist, die auch aktiv
war, als das Menü erweitert wurde.
Ich möchte aber, daß Menüänderungen für alle Views gelten.
Wie mache ich das?

Gruß Patrick

In den MFC ist es so, dass eine Dokumentenklasse, eine Viewklasse und das Menü zu jedem Dokumententemplate zugeordnet wird (siehe Initinstance von CXXXApp). Wenn ich das richtig Verstanden habe, dann hast du 4 Viewklassen und brauchst deshalb auch 4 Templates.
Für gewöhnlich hast du auch 4 Menüresourcen

  1. Du kannst aber natürlich auch 1 Menüresource verwenden, welche dann für alle Viewklassen gleich ist.
  2. Falls die 4 Menüresourcen nicht gleich sein sollen, dann musst du eben für alle Resourcen seperat die Menüitems hinzufügen.

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hallo Stefan,

danke für Deine Antwort.

>>1. Du kannst aber natürlich auch 1 Menüresource verwenden,
>> welche dann für alle Viewklassen gleich ist.

Es stimmt, daß ich vier Doc-Templates erstelle. Ich verwende
aber für alle die gleiche Menü-Resource. Die Menüeinträge ändere ich zur Laufzeit mit AppendMenu() und diese Änderungen sind leider nur dann sichtbar, wenn die Ansicht aktiv ist, die beim Modifizieren des Menüs aktiv war. Ich könnte natürlich alle Views nacheinander aktivieren und das Menü ändern, aber vielleicht gibt es doch einen eleganteren Weg?

Gruß Patrick