呼叫的方法addFrameScript可能未定義

jsship發表於2010-11-25

昨天使用了一個文件類的效果,該類擴充套件了Sprite類,結果測試時報錯:1180: 呼叫的方法 addFrameScript 可能未定義。當時我想到addFrameScript方法是往幀上新增程式碼,而Sprite是沒有時間軸的,所以改為了讓該類擴充套件MovieClip類,在建立例項時也用了new MovieClip()方法,果然就沒有報錯了。問題雖然解決,但我仍在雲裡霧裡,為什麼Sprite類不可以呢?這可是AS3.0cookbook上原封不動的程式碼啊!總不會錯吧,還是請教一下高手吧,他一下就發現問題所在,當文件類是擴充套件了Sprite類時,fla檔案的時間軸上是不允許有程式碼的,哪怕是註釋掉的程式碼或文字也不可以(我的fla檔案時間軸上就有一點已註釋的程式碼,刪掉後文件類繼承自Sprite類也不報錯了)。最後總結一下兩者的區別,Sprite類是密封類,MovieClip類是動態類,Sprite例項沒有時間軸,MovieClip類例項有時間軸,可動態新增屬性。

 

原載:http://blog.sina.com.cn/s/blog_631f46ab0100h2oc.html

相關文章