Re: [問題] 控制MovieClip的疑問

看板Flash作者 (佳節快樂 :))時間17年前 (2007/03/25 09:06), 編輯推噓2(202)
留言4則, 2人參與, 最新討論串2/3 (看更多)
※ 引述《icedesign (徵求工作伙伴(程設))》之銘言: : 麻煩各位先輩幫我看一下,哪裡有問題? : 今天我在一個場景上,設計了九個MovieClip,我希望可以藉由function : ,滑鼠移到哪個MovieClip上,該MovieClip就能夠做出它的反應。 : stop(); : var i:Number; : for (i=1; i<=9; i++) { : this["n"+i].onRollOver = function() { : this["n"+i].gotoAndStop(2); : }; : this["n"+i].onRollOut = function() { : this["n"+i].gotoAndStop(3); : }; : this["n"+i].onRelease = function() { : this["n"+i].gotoAndStop(4); : }; : } : 我有想過,因為程式無法判斷我的滑鼠目前是停在哪個影片上,所以就算 : 我將滑鼠移到影片上,卻也是沒有任何的反應。 : 所以我想到了假設將影片n1在on(rollover)的時候,假設一個值為1,可是 : 影片似乎還是一樣沒有反應。 : 想麻煩各位先輩指點我一下,我應該要如何將滑鼠目前移入哪個MovieClip : 的判斷,寫入程式之中呢? m(_ _)m麻煩各位了! stop(); for (i in _root) { if (typeof (this[i]) == "movieclip") { this[i].onPress = function() { this.gotoAndPlay(3); }; this[i].onRollOver = function() { this.gotoAndPlay(2); }; this[i].onRollOut=this[i].onRelease=this[i].onReleaseOutside=function(){ this.gotoAndPlay(1); }; } } 原始檔: http://www.eddie.com.tw/FlashLabs/Examples/AllObjects/AllObjects.rar 用typeof來判斷,連instance name都省下來了 :) 只要它是在場景上的movieclip,都可以有反應了 typeof的回傳值,可參考F1說明 ============================= Expression Type | Result ============================= String | string ----------------------------- Movie clip | movieclip ----------------------------- Button | object ----------------------------- Text field | object ----------------------------- Number | number ----------------------------- Boolean | boolean ----------------------------- Object | object ----------------------------- Function | function ============================= -- http://www.eddie.com.tw/blog/ http://www.eddie.com.tw/ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.135.172.127 ※ 編輯: aquarianboy 來自: 220.135.172.127 (03/25 09:36)

03/25 11:54, , 1F
神手
03/25 11:54, 1F

03/25 11:55, , 2F
不知 for (i in _root) 會跑過哪些東西?
03/25 11:55, 2F

03/25 13:18, , 3F
應該是會掃過_root上面所有的物件
03/25 13:18, 3F

03/25 13:18, , 4F
但不包含物件裡的物件 :)
03/25 13:18, 4F
文章代碼(AID): #161ShyNE (Flash)
文章代碼(AID): #161ShyNE (Flash)