精華區beta Flash 關於我們 聯絡資訊
※ 引述《etrexetrex (moonet)》之銘言: : ※ 引述《sextitanic (阿信163)》之銘言: : : 其實如果是命名成 a1、a2、a3....a11 : : 那可以寫成 : : for(var i=1; i<=11; i++){ : : this["a" + i].stop(); : : } : : 如果不想要每一個都設名字的話,倒可以用另一個方法 : : typeof : : 嗯.....就是偵測場景上的元件是什麼類型 : : 如果是 movieclip 就停止 : : 大概範例如下: : : for(var i in _root){ //迴圈,會跑在 _root 裡面的所有物件,指定給 i : : if(typeof(this[i])=="movieclip"){ // movieclip 就是影片片段 : : this[i].stop(); //先把第一層的停下來 : : for(var j in this[i]){ //再來就是停 i 影片片段裡面的囉 : : if(typeof(this[i][j]) == "movieclip"){ : : this[i][j].stop(); : : } : : } : : } : : } (註一) : : 嗯......這個應該是 ok 的,寫的還挺醜的啊 XD : 寫成遞迴 就能支援到所有層級 : function stopMC(MC) : { : MC.stop(); : for(var i in MC) : if(typeof(MC[i]) == "movieclip") : stopMC(MC[i]); : } : 不過其實等到復原的時候就出包了,因為 : function playMC(MC) : { : MC.play(); : for(var i in MC) : if(typeof(MC[i]) == "movieclip") : playMC(MC[i]); : } : 當初停止全部的MC之前,也許只有少數幾個MC會動 : 但是復原時卻是所有MC都在動阿~~~(無解) : 有辦法判斷出某個MC是否正在play嗎? : ==嘗試修改推文中提到的問題 : function stopMC(MC) : { : for(var i in MC) : if(typeof(MC[i]) == "movieclip") : stopMC(MC[i]); : //備份資料 : MC.onEnterFrameBackup = MC.onEnterFrame; : MC._currentFrameBackup = MC._currentFrame; : MC.onEnterFrame = function() : { : //判斷這MC本身會不會動 : if(this._currentFrame == this._currentFrameBackup) : this.stopByFunction = false; : else : this.stopByFunction = true; : //馬上停掉 : this.onEnterFrame = null; : } : MC.stop(); : } : function playMC(MC) : { : for(var i in MC) : if(typeof(MC[i]) == "movieclip") : playMC(MC[i]); : MC.onEnterFrame = MC.onEnterFrameBackup; : if(MC.stopByFunction) : MC.play(); : } 呼~還好我的問題寫這樣大家都看的懂 首先我要感謝sextitanic大大,今天一大早看到您的回覆之後,馬上就在公司開 檔案開始研究(註一)的程式,經過一陣子的理解,總算知道整個動作的原理了 ,自己動手稍加修改了一點點地方之後,真的是很神奇啊!真的全部都停止了!不 像以前我自己亂搞的程式,大部分都停止只剩少部分還在動~"~ 不過停止了還是要播放,所以我試著把程式中的STOP通通改成PLAY,結果當然是動 了!!動了!!!動了啊~~~~超級感動的!不過是大家一起動...(淚) 萬幸的是,大部分的影格都是需要大家一起動的,只有少部分是需要一部分動,一 部分不能動。因為我本身學FLASH只學皮毛,也就是動畫那一塊,AS程式部份還沒學 ,所以就盡所能的修改MovieClip裡面的元件跟順序,盡量把他改到不會有太大的影 響,就這樣...一天就過了...一整天都在跟FLASH談情說愛呀...XD 另外也謝謝etrexetrex大大 看到您的程式真是讓我驚為天人!!!(這個詞用在這邊對嗎@.@?) 用了不少我還不知道幹啥用的程式,不過也很好奇這支程式能讓我跟FLASH擦出什麼 樣的火花,明天上班我會好好的研究的= =+ (檔案放在公司沒帶回家,只好明天再研究) 感恩~感恩~再感恩! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.140.19.91
etrexetrex:XD 我寫的程式沒測試過喔 @@ 12/10 20:30
tira0419:我回到家才發現您的程式呀=口= 12/10 20:31
tira0419:報告,剛剛去找了個舊檔,東拼西湊湊出大致上的環境之後 12/10 20:47
tira0419:發現試不出來...我要在研究一下Q.Q 12/10 21:06
etrexetrex:XD 我剛殺了一支蟲 12/10 21:11