看板 Flash 關於我們 聯絡資訊
小弟又來問問題了>"<..... 這個問題我想了好久,但想不出一個好辦法出來。 有兩個類別A和類別B A類別利用AMFPHP的方式向SERVER呼叫PHP, PHP會傳回一個陣列。 那要怎樣才能讓B類別知道陣列已經傳回來了呢?? A類別程式碼大約如下: package { import flash.net.display.*; import flash.net.NetConnection; import flash.net.Responder; public class A extends Sprite { private var connection:NetConnection; private var responder:Responder; public function A() { connection = new NetConnection(); responder = new Responder(onResult,onFault); connection.connect(路徑......); connection.call(路徑......, responder); }//end A() private function onResult(result:Array):void { 傳回來後執行.. } private function onFault(result:Object):void { 傳失敗時執行.. } }//end class }//end package 當PHP傳回陣列的時候,就會執行onResult這個方法, 但我要怎樣才能讓B類別可以知道現在已經將onResult這方法執行完了? 小弟只有想到幾個辦法, 1.在B類別用迴圈持續的偵測,當A類別的屬性變成true的時候,就表示 onResult執行完了。( 但感覺這個方法很爛= =||| ) 2.將A類別的Responder物件設定成,當php回傳資料時,直接執行B類別 的某個方法。( 不過不知道該怎樣做這樣的設定XD ) 總之,想了很久,想不出個結果,不知道有沒有大大能幫忙小弟解惑~^^~ 感謝>"<..... -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 59.126.249.114
poomsne:1.dispatchEvent 02/26 15:08
poomsne:2.class B引入claas a的參考 02/26 15:09
LCDbest:大大回的也太快了吧XD 感謝大大小弟去研究看看~^^~ 02/26 15:16