J'ai une classe a fla appelée draw.fla. La classe de document associé à tirage est Draw.as Le code à l'intérieur Draw.as est le suivantChargement d'un swf dans un autre swf accéder à des fonctions dans le swf enfant
package
{
import flash.display.MovieClip;
import flash.display.Graphics;
public class Draw extends MovieClip
{
public function drawCircle1(color:Number):void
{
graphics.beginFill(color);
graphics.drawCircle(100,100,40);
graphics.endFill();
}
}
}
Le swf résultant est appelé draw.swf.
J'ai un autre fichier appelé test.fla.
Ce qui suit est le code sur la première image de la ligne de temps principale.
import flash.events.Event;
import flash.events.IOErrorEvent;
import flash.net.URLLoader;
import flash.net.URLRequest;
import flash.display.Loader;
var swfLoader = new Loader();
var color:Number;
color = Math.round(Math.random()*0xFFFFFF);
var urlReq:URLRequest = new URLRequest("draw.swf");
swfLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, swfLoadComplete);
swfLoader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, swfLoadError);
swfLoader.load(urlReq);
function swfLoadComplete(evt:Event):void
{
var loader:Loader = Loader(evt.target.loader);
addChild(loader.content);
swfLoader.removeEventListener(Event.COMPLETE, swfLoadComplete);
}
function swfLoadError(evt:IOErrorEvent):void
{
trace("Unable to load swf ");
swfLoader.removeEventListener(IOErrorEvent.IO_ERROR, swfLoadError);
}
J'ai chargé dwaw.swf dans test.swf comme vous pouvez le voir. Y at-il de toute façon que je peux accéder à la fonction drawCircle1 de Draw à partir du test.fla. En fait, j'ai besoin de passer la couleur de la valeur comme argument lors de l'accès à cette fonction.