Tip Flex: Acceso a propiedades y métodos en un swf cargado
Si queremos cargar una película Flash en un proyecto Flex, lo más recomendable es utilizar la clase SWFLoader (loader.load("miArchivo.swf")). Pero si queremos acceder a métodos u objectos dentro de esta película deberemos distinguir entre si se trata de AS2 (Flash 8 e inferiores) o AS3 (Flex o Flash 9 Preview).
En el primer caso para poder comunicar las dos películas tendremos que utilizar LocalConnection ya que los dos códigos se ejecutarán sobre máquinas virtuales diferentes (VM1 y VM2).
El segundo caso es mucho más sencillo ya que podemos acceder directamente a todo lo que contiene nuestra película cargada, pero hay que tener en cuenta el siguiente detalle:
En en tiempo de compilación, Flex no sabe qué contiene la película que queremos cargar, por tanto, lanzará un error bastante molesto si queremos acceder a un objeto de la siguiente manera:
miLoader.content.miObjecto.propiedad
En lugar de ello deberemos acceder utilizando el operador de matriz:
miLoader.content["miObjecto"].propiedad
Si lo que queremos es ejecutar un método lo haremos de manera similar:
miLoader.content["miMetodo"]()
En breve postearé un ejemplo de LocalConnection entre Flash 8 y Flash 9...
8 Comments
Jump to comment form | comments rss [?] | trackback uri [?]