Ilustración de enrutamiento de comandos
Para ilustrarlo, considere un mensaje de comando desde un elemento de menú Borrar todo en el menú Edición de una aplicación MDI. Supongamos que la función de controlador para este comando es una función miembro de la clase de documento de la aplicación. Este es el modo en que ese comando llega a su controlador después de que el usuario elija el elemento de menú:
La ventana de marco principal recibe primero el mensaje de comando.
La ventana de marco MDI principal ofrece a la ventana secundaria MDI activa actualmente la posibilidad de controlar el comando.
El enrutamiento estándar de una ventana de marco secundario MDI ofrece a su vista una oportunidad en el comando antes de comprobar su propio mapa de mensajes.
La vista comprueba primero su propio mapa de mensajes y, al buscar ningún controlador, a continuación enruta el comando a su documento asociado.
El documento comprueba su asignación de mensajes y busca un controlador. Se llama a esta función al miembro del documento y el enrutamiento se detiene.
Si el documento no tiene un controlador, a continuación enrutaría el comando a su plantilla de documento. A continuación, el comando volvería a la vista y, a continuación, la ventana de marco. Por último, la ventana de marco comprobaría su mapa de mensajes. Si también se produjo un error en esa comprobación, el comando se enrutaría de nuevo a la ventana principal del marco MDI y, a continuación, al objeto de aplicación, el destino final de los comandos no controlados.