不要太相信Debugger
flash的debugger購強大,用來調試很方便,但是不能太相信上面的movieclip清單,大致有兩种情況:
1, 舞臺上有,清單上沒有
這是由一個bug引起的,用swapDepths將mc移動到一個深度,然後向後播放時間綫,接著(一幀或多幀之後)用gotoAndStop或gotoAndPlay播放swapDepths之後的某一幀,Flash會複製一個新的mc出來。
此時舞臺上有兩個mc,可是debugger裏面只顯示一個。
下載測試 fla
ps: 解決swapDepths+gotoAndStop的bug,可以用2004的 DepthManager.setDepthTo()
2, 舞臺上沒有,清單上有
新建一個兩幀兩層的flash,在第一層放一個mc,取名mc。在第二層第一幀寫as:
mc._name = "mcA";
OK, 按ctrl+shift+Enter調試,可以看到debugger裏面有兩個mc,所有屬性都是一樣的,改變其中一個的_visible屬性,兩個mc都會消失。這説明debugger顯示的兩個mc是同一個mc。