2013-03-20 125 views
1

我在Adobe Flash中製作了一個網站,該網站從外部swf文件導入它的導航按鈕。 問題是我的主FLA文件將知道用戶按下了哪個導航按鈕,因爲這些按鈕和它的eventListener位於外部swf文件中。AS3:使用外部swf中的按鈕

換句話說:我可以讓我的外部SWF文件返回一個數字到我的網站FLA文件,以確定哪個按鈕被按下?如果是這樣,怎麼樣?

+0

你願意去下載php的路徑並加載url請求,或者你想在兩個swfs之間創建一個本地連接來發送和接收數據?我以前做過這種網站,所以我可以幫你解決這個問題。 – 2013-03-20 19:26:33

+0

嗨,謝謝你試圖回答。我希望僅在Adobe Flash中構建我的網站,而不是使用PHP。 – Olof84 2013-03-20 19:35:00

+0

答案對你有幫助嗎?如果你願意,我有另一種解決方案。 – 2013-03-20 20:01:59

回答

0

您可以設置外部SWF和主SWF之間的連接使用LocalConnection()

在main.swf中

var sending_lc:LocalConnection; 
sending_lc = new LocalConnection(); 

function send_it(evt:MouseEvent):void 
{ 
    sending_lc.send("connectionName", "functionName", "myData"); 
    //params are (connection name, function to execute in the receiving swf, the data to pass through) 
} 

my_btn.addEventListener(MouseEvent.MOUSE_UP, send_it); 

在exetrnal.swf

var receiving_lc:LocalConnection; 
receiving_lc = new LocalConnection(); 

receiving_lc.connect("connectionName"); 
receiving_lc.client = this; 

function functionName(data:String):void { 
trace(data); 
} 
+0

我會試試。我不得不改變它,因爲我想從外部swf(當點擊按鈕時)發送一個值到main.swf。 – Olof84 2013-03-20 20:52:42

+0

它工作。謝謝! – Olof84 2013-03-20 21:42:17

+0

@ Olof84我歡迎。很高興我幫了忙。 – 2013-03-20 21:44:27