Freigeben über


Befehlsroutingerläuterung

Betrachten Sie zur Veranschaulichung eine Befehlsmeldung aus einem Menüelement "Alle löschen" im Menü "Bearbeiten" einer MDI-Anwendung. Angenommen, die Handlerfunktion für diesen Befehl ist eine Memberfunktion der Dokumentklasse der Anwendung. So erreicht dieser Befehl seinen Handler, nachdem der Benutzer das Menüelement auswählt:

  1. Das Standard Framefenster empfängt zuerst die Befehlsmeldung.

  2. Das Standard MDI-Framefenster bietet dem derzeit aktiven untergeordneten MDI-Fenster die Möglichkeit, den Befehl zu behandeln.

  3. Das Standardmäßige Routing eines untergeordneten MDI-Framefensters bietet deren Ansicht eine Chance auf den Befehl, bevor die eigene Nachrichtenzuordnung überprüft wird.

  4. In der Ansicht wird zuerst eine eigene Nachrichtenzuordnung überprüft, und beim Suchen eines Handlers wird der Befehl als Nächstes an das zugehörige Dokument weitergeleitet.

  5. Das Dokument überprüft seine Nachrichtenzuordnung und findet einen Handler. Diese Dokumentelementfunktion wird aufgerufen, und die Routingstopps werden beendet.

Wenn das Dokument nicht über einen Handler verfügte, würde er als Nächstes den Befehl an die Dokumentvorlage weiterleiten. Anschließend würde der Befehl zur Ansicht und dann zum Rahmenfenster zurückkehren. Schließlich würde das Framefenster seine Nachrichtenzuordnung überprüfen. Wenn diese Überprüfung ebenfalls fehlgeschlagen ist, wird der Befehl zurück an das Standard MDI-Framefenster und dann an das Anwendungsobjekt weitergeleitet – das ultimative Ziel von nicht behandelten Befehlen.

Siehe auch

So ruft das Framework einen Handler auf