2011-01-02 14 views
1

IM: (このコードはmain.swf内にある)firts内部に装填される別のSWF 1つのSWFからのパスのVaRの値は、AS3に1

function loadImage(url:String):void { 
imageLoader = new Loader(); 
imageLoader.load(new URLRequest(url)); 
imageLoader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, imageLoading); 
imageLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, imageLoaded); 
} 
loadImage("test1.swf"); 

function imageLoaded(e:Event):void { 
MyMovieClip.addChild(imageLoader); 
} 

思考は、test1.swfはローダーswf(main.swf)にある値を必要としていますが、どのように値を渡すことができますか?ありがとう!

答えて

1

Documentクラスで割り当てることができる読み込まれたSWF(test1.swf)のクラスを作成できます。

このクラスでは、読み込まれたSWFに渡す必要がある値のセッターを作成します。

//Here the choice of Array is arbitrary & depends on what values 
    //you need to pass to the SWF... 
    private var _params:Array; 
    public function set params(value:Array):void 
    { 
     _params = value; 
    } 

そして、自分のメインクラスでは、次の操作を行うことができます

//Assuming you'd like to pass a number of values... 
    function imageLoaded(e:Event):void { 

     var content:MovieClip = imageLoader.content as CustomClass; 
     content.params = [ value1 , value2... valueN]; 
     MyMovieClip.addChild(content); 
    } 
+0

こんにちはパトリックス、瞬間があるときは、これを見ることができますか?http://stackoverflow.com/questions/6933387/how-to-pass-a-string-from-a -swf-into-another-swf –

0

これを行うには、ローダーのコンテンツにアクセスする必要があります。 imageLoaded関数でこれを行います。

(e.target.content as Object).someParam = "whatever"; 

は、セキュリティ制限の数は(これはクロススクリプティングと呼ばれている)、検討することができますが、同じドメインから2つのSWFをロードする場合、あなたは問題がないはずがあります。

+0

これはまさにところで書かれている方法は?それは私が彼女が書いた正確なローダー機能にどのようにフィットするのかということです。私は同じ問題を抱えています:( –

関連する問題