Visto 22 veces.

As3 Snippet – Recorrer todos los objetos/Movieclips y sus profundidades/Hijos del escenario o de un Movieclip.

As3 Snippet – Go through all the objects / Movieclips and their depths / Childrens of the stage or of a Movieclip passed by parameter.

El siguiente código recorre todos los objetos del objeto que le pasemos en el parámetro ya sea el propio escenario(this) o un movieclip.

El script recorre todos los objetos y comprueba si tiene la propiedad numChildren disponible si es así quiere decir que es un ObjectContainer y entonces miramos cuántos hijos tiene, si alguno de ellos vuelve a ser otro ObjectContainer volvemos a llamar la función para ese objeto, creando una copia de la función de si misma por cada objeto iterado. El código pinta en la pantalla de salida todos los objetos encontrados y los indenta mediante tabulaciones según la profundidad de cada objeto y de cada hijo.

Con un poquito más de trabajo se podría modificar para que en vez de sacar la información por la ventana de salida mediante trace, se sacara estructuradamente en formato xml o html para facilitar su entendimiento y legibilidad.

Como siempre subo el código para tenerlo disponible para mí y para compartirlo con quien pueda serle de utilidad, yo lo utilicé para recorrer todos los objetos de un componente cargado dinámicamente para investigar o hacer ingeniería inversa sobre su estructura de rutas.

Lo cierto es que este código tan sencillo le tuve que dar varias vueltas para resolver el tema de los tabuladores empecé con algo más de código y más complejo y al final acabe con esta versión tan sencilla y simple.

Un saludo