Saber cuál es el orden de ejecución que se sigue en nuestras aplicaciones Xojo para el evento Opening (y Shown, en las aplicaciones Xojo Web) es importante, pues muy frecuentemente es el evento que utilizamos durante la inicialización de los controles.
Por ejemplo este es el caso a la hora de asignar valores a determinadas propiedades del propio control o bien algunas otras clases que puedan ser precisas para su correcto funcionamiento.
Aplicaciones Desktop y Mobile
- Primero se ejecutará el evento Opening del objeto App
- Luego el evento Opening en cada uno de los controles de las ventanas del proyecto, siguiendo el mismo orden en el que se hayan añadido los controles sobre la ventana correspondiente utilizando el Editor de Diseño. (Puedes cambiarlo utilizando los botones “Order” en la barra de herramientas del Editor de Diseño.)
- Por último, se ejecutará el evento Opening en la ventana que contiene dichos controles.
En las aplicaciones Desktop
Cuando se cierra la ventana se ejecutará el evento Closing en las apps Desktop siguiendo este orden:
- Primero el evento Closing en cada uno de los controles añadidos a la ventana/pantalla, siguiendo el mismo orden con el cual se hayan añadido los controles sobre la ventana. (Puedes cambiarlo utilizando los botones “Order” en la barra de herramientas del Editor de Diseño.)
- Luego el evento Closing de la ventana en cuestión.
- Por último, se ejecutará el evento Closed en el objeto App de una aplicación Desktop cuando se salga de la aplicación.
Aplicaciones Web
En el caso de las aplicaciones Web, el orden es el siguiente:
- Primero se ejecuta el evento Opening en el objeto WebApp.
- A continuación, el evento Opening en el objeto WebSession.
- Luego el evento Opening en cada uno de los controles de la página Web asignada por omisión, siguiendo para ello el mismo orden con el cual se hayan añadido los controles a la página web que los contiene. (Puedes cambiarlo utilizando los botones “Order” en la barra de herramientas del Editor de Diseño.)
- Posteriormente, se ejecutará el evento Opening en la página web asignada por omisión a la aplicación web.
- Tras el anterior paso, comenzarán a ejecutarse los eventos Shown en cada uno de los controles de la página.
- Y por último se ejecutará el evento Shown en la propia página por omisión.
Cuando se trata de los eventos Closing y Closed en las aplicaciones Xojo Web se sigue el siguiente orden:
- Primero se ejecutará el evento Closing en WebSession.
- A continuación el evento Closed en los controles de la página, siguiendo el mismo orden con el que se hayan añadido. (Puedes cambiarlo utilizando los botones “Order” en la barra de herramientas del Editor de Diseño.)
- Finalmente, el evento Closed en la página Web.