作者etrexetrex (moonet)
看板Flash
标题[心得] 元件视为类别
时间Fri Jan 25 19:53:21 2008
将元件视为类别
若在元件里的影格
写下变数宣告视为属性例如: var abc = 1;
以及函数宣告视为方法例如: function abc () { };
则可将元件视为类别使用 ( 虽然正规是要用.as档 )
这种作法的优点在於:可建立出用影格作时间差,或作渐变动画的类别。(少写一点程式)
这种概念让我已经不坚持将所有程式码都写在 root 上
而改为由元件提供属性及方法,交给 root 使用的模式了
虽然AS2不是很严谨,但是这样的写法比起之前,好维护多了 ( 我觉得 )
注意事项:程式执行的顺序为 root 优先。
因此若 root 第一影格中放有元件A并取名为a
执行顺序如下:
==== 在 root 中的程式 ==== ==== 在 A 中的程式 ====
1 trace(this); 4 trace(this);
2 trace( root.a ); 5 var i = 1;
3 trace( root.a.i);
====================================================================
trace结果为:_level0
_level0.A
undefined <== 重点
_level0.A
此时的 root 并没有读到 A 中设定的 i
因为 A 还没有被执行
解决方案为:1. 用 .as档建立类别
2. root 的程式往後一个影格
--
http://etrex.blogspot.com/
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 218.160.108.163