Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Uw verantwoordelijkheid bij het werken met opdrachten is beperkt tot het maken van berichttoewijzingsverbindingen tussen opdrachten en de bijbehorende handlerfuncties, een taak waarvoor u de wizard MFC-klasse gebruikt. U moet ook de code schrijven voor de opdrachthandlers.
Windows-berichten worden meestal verzonden naar het hoofdframevenster, maar opdrachtberichten worden vervolgens doorgestuurd naar andere objecten. Binnen het framework worden commando's gerouteerd via een standaardreeks van commando-doelobjecten, waarvan er één naar verwachting een handler voor het commando heeft. Elk doelobject controleert zijn berichtenkaart om te controleren of het het binnenkomende bericht kan verwerken.
Verschillende commando-doelklassen controleren hun eigen berichttoewijzingskaarten op verschillende tijdstippen. Normaal gesproken stuurt een klasse de opdracht naar bepaalde andere objecten om ze de eerste kans te geven bij de opdracht. Als geen van deze objecten de opdracht verwerkt, controleert de oorspronkelijke klasse zijn eigen verwerkingskaart. Als het vervolgens zelf geen handler kan leveren, kan het de opdracht mogelijk doorsturen naar nog meer commandodoelen. In de tabel Standaardopdrachtroute hieronder ziet u hoe elk van de klassen deze reeks structureert. De algemene volgorde waarin een opdrachtdoel een opdracht routeert, is:
Naar zijn momenteel actieve kind-opdrachtdoelobject.
Naar zichzelf.
Naar andere opdrachtdoelen.
Hoe duur is dit routeringsmechanisme vergeleken met wat uw handler doet als reactie op een opdracht, de kosten van de routering zijn laag. Houd er rekening mee dat het framework alleen opdrachten genereert wanneer de gebruiker communiceert met een gebruikersinterfaceobject.
Standaardopdrachtroute
| Wanneer een object van dit type een opdracht ontvangt. . . | Het geeft zichzelf en andere opdrachtdoelobjecten de kans om de opdracht in deze volgorde te verwerken: |
|---|---|
MDI-framevenster (CMDIFrameWnd) |
1. Actief CMDIChildWnd2. Dit framevenster 3. Toepassing ( CWinApp object) |
Documentframevenster (CFrameWnd, CMDIChildWnd) |
1. Actieve weergave 2. Dit framevenster 3. Toepassing ( CWinApp object) |
| Bekijk | 1. Deze weergave 2. Document gekoppeld aan de weergave |
| Document | 1. Dit document 2. Documentsjabloon gekoppeld aan het document |
| Dialoogvenster | 1. Dit dialoogvenster 2. Venster dat eigenaar is van het dialoogvenster 3. Toepassing ( CWinApp object) |
Wanneer genummerde items in de tweede kolom van de voorgaande tabel andere objecten, zoals een document, vermelden, raadpleegt u het bijbehorende item in de eerste kolom. Wanneer u bijvoorbeeld in de tweede kolom leest dat de weergave een opdracht naar het document doorstuurt, raadpleegt u de vermelding 'Document' in de eerste kolom om de routering verder te volgen.