Re: [問題] 引入的類別之事件的處理

看板Flash作者 (CJ Cat)時間17年前 (2008/08/29 23:39), 編輯推噓1(103)
留言4則, 2人參與, 最新討論串3/4 (看更多)
※ 引述《ayuiop ((茶))》之銘言: : public class URLLoad extends Sprite { : public function URLLoad(filename:String) { : var request:URLRequest = new URLRequest(filename); : request.method = 'POST'; : var TextData:URLLoader = new URLLoader(); : TextData.addEventListener(Event.COMPLETE, completeHandler); : try { : TextData.load(request); : } catch (error:Error) { : ... : } : } : private function completeHandler(event:Event):void { : //對資料進行剖析 : } : } : 那...該怎麼讓主程式知道檔案讀完了呢? 把textData變成一個public property應該就可以了 然後把constructor改成一個普通method public class URLLoad extends Sprite { //改成一個public property(我改名叫loader比較簡單) public var loader:URLLoader = new URLLoader(); //從constructor改成一個普通method public function load(fileName:String) { loader.load(new URLRequest(fileName)); } public funciton comp(e:Event):void { //... } } 然後主程式寫 var urlLoad:URLLoad = new URLLoad(); urlLoad.loader.addEvetnListener(Event.COMPLETE, urlLoad.comp); urlLoad.load(...); 不過我還是不知道你為什麼要這樣寫耶 單純的URLLoader載入外部資料不是直接寫在主程式裡面就好了嗎 var loader:URLLoader = new URLLoader(); loader.addEvetnListener(Event.COMPLETE, done); loader.load(new URLRequest(...)); function done(e:Event):void { //... } code寫得比較少,而且也比較不會搞混 -- CJ Cat = Croa'J Cat = Cockroach Cat = 西街凱特 = 蜚蠊貓 = 蟑螂貓 Blog http://cjcat.blogspot.com Gallery http://cjcat2266.deviantart.com ptt2 Board CJWorkshop - 阿多比閃光(Adobe Flash)研討區 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.228.95.53

08/29 23:40, , 1F
然後這個class也不太需要身為Sprite的subclass吧
08/29 23:40, 1F

08/29 23:41, , 2F
感覺完全沒用到Sprite的特性
08/29 23:41, 2F

08/29 23:44, , 3F
了解 受教了 這一切都是因為我直接抄F1裡面的範例再來改而
08/29 23:44, 3F

08/29 23:45, , 4F
造成的混亂XD"
08/29 23:45, 4F
文章代碼(AID): #18k1Wm76 (Flash)
文章代碼(AID): #18k1Wm76 (Flash)