看板 Flash 關於我們 聯絡資訊
如題 在主fla中 有設定5個mc做為選單 子選單做為按鈕 不同按鈕會放不同swf 所以我將loader那段的程式寫在選單mc中 問題來了 外部swf有載入成功 但swf播到一半就停住了 我自己猜想是load不完全的問題 想請問一下 要再增加什麼 才可以先讓swf載完再播放? 程式碼片段如下 btn1_2.addEventListener(MouseEvent.CLICK,menu1_2); function menu1_2(me:MouseEvent) { var loader1_2:Loader = new Loader(); loader1_2.load(new URLRequest("target1.swf")); addChild(loader1_2); loader1_2.x=-123; loader1_2.y=-64; trace("載入成功"); } -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 211.20.60.72
KawasumiMai:loader1_2.addEventListener(Event.COMPLETE,func) 06/20 19:05
KawasumiMai:加入完成之後的監聽事件,然後才讓他play() 06/20 19:06
KawasumiMai:target1.swf一開始可以弄個stop() 06/20 19:06
KawasumiMai:只靠按鈕就顯示載入成功並不嚴謹 06/20 19:06
KawasumiMai:然後記得先addEventListener再load 06/20 19:06
toyhsu:請問 不是一load完就會自動播放 如果我在target1放stop 06/21 11:07
toyhsu:要如何指定target1從影格2開始播 06/21 11:08
KawasumiMai:推測既然沒載完會直接播放,表示在跑play()事件之前 06/21 17:05
KawasumiMai:應該會先執行裡面的stop(),然後對stop中的影格執行 06/21 17:05
KawasumiMai:play(),其實他是會繼續跑的 06/21 17:06
KawasumiMai:不然其實你loader1_2.gotoAndPlay(2)也可以 06/21 17:06
KawasumiMai:當load完畢之後,loader1_2本身就等於swf了 06/21 17:06
toyhsu:現在發現 不是沒載完的問題 是會跑到主影格結束的地方就當 06/21 17:16
toyhsu:掉 比如說我主影格在1800放AS 載入B.SWF B.SWF跑到1800就會 06/21 17:17
toyhsu:出#1009的錯 不知道為什麼會這樣 @@" 06/21 17:18
現在程式碼改成下面 import flash.display.MovieClip; stop(); var tmp1:Boolean = new Boolean(false); var tmp:MovieClip = new MovieClip(); var loader:Loader = new Loader(); menu1.btn1_1.addEventListener(MouseEvent.CLICK, menu1_1); function menu1_1(event:MouseEvent):void { loader.unloadAndStop(); loader.load(new URLRequest("2-3-頭燈.swf")); loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onLoaderComplete); } menu1.btn1_2.addEventListener(MouseEvent.CLICK,menu1_2); function menu1_2(event:MouseEvent):void { loader.unloadAndStop(); loader.load(new URLRequest("2-3-後號牌燈.swf")); loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onLoaderComplete); } menu2.btn2_1.addEventListener(MouseEvent.CLICK, menu2_1); function menu2_1(event:MouseEvent):void { loader.unloadAndStop(); loader.load(new URLRequest("2-3-煞車燈.swf")); loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onLoaderComplete); } menu2.btn2_2.addEventListener(MouseEvent.CLICK,menu2_2); function menu2_2(event:MouseEvent) { loader.unloadAndStop(); loader.load(new URLRequest("2-3-第三煞車燈.swf")); loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onLoaderComplete); } menu2.btn2_3.addEventListener(MouseEvent.CLICK, menu2_3); function menu2_3(event:MouseEvent):void { loader.unloadAndStop(); loader.load(new URLRequest("2-3-方向燈.swf")); loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onLoaderComplete); } menu2.btn2_4.addEventListener(MouseEvent.CLICK,menu2_4); function menu2_4(event:MouseEvent) { loader.unloadAndStop(); loader.load(new URLRequest("2-3-倒車燈.swf")); loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onLoaderComplete); } menu2.btn2_5.addEventListener(MouseEvent.CLICK, menu2_5); function menu2_5(event:MouseEvent):void { loader.unloadAndStop(); loader.load(new URLRequest("2-3-危險警告燈.swf")); loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onLoaderComplete); } function onLoaderComplete(e:Event):void { if (tmp1==true) { removeChild(loader); } _mc.addChild(loader); loader.x=0; loader.y=-75; //tmp=loader.content as MovieClip; //tmp.play(); _mc.play(); trace("載入成功"); tmp1=true; } 這是放在主影格最後一格(1820) 不過只要載入的SWF跑到1820 就會出#1009的錯 不知道要如何解決...苦惱中 ※ 編輯: toyhsu 來自: 111.250.3.237 (06/26 10:56)
KawasumiMai:_mc.addChild(loader),表示swf在_mc裡面 06/26 13:00
KawasumiMai:這時候你要play的應該是_mc的child(0)而不是_mc本身 06/26 13:00
KawasumiMai:tmp那行可以用,改成e.content as MC或Object 06/26 13:01