flash动画的本质-路径和点语法
现在大家应该明白flash动画的本质了,就是在时间轴上的各种对象的嵌套嵌套再嵌套,如果我们要控制这些对象,我们就需要对他们"定位"了,也就是说,如果我们让其中的一个对象表演,我们必须知道这个对象是"谁",或者是"谁"要表演什么。要完成这些工作,就要知道他们的嵌套关系,引入了路径这个概念。
学电脑的人都知道windows的资源管理方式,通过文件夹、子文件夹...来管理文件,flash的管理同样的类似呀。
我准备从下面几个方面给大家介绍:
一、为什么必须搞清楚路径?
我们搞清楚路径目的很简单,就是让flash可以找到控制的对象,才可以让这个对象"表演"。比如你丢了1钱(好象晦气,我们在这里比如),想找到它,那你怎么办?会顺着你在丢前去过的对方按时间顺序一个地方一个地方的找,比如,家(在这里还有那一元)--拐角处(这里有个石头绊了你一脚)-办公室(在这里掏吸)。这样为了这1元,你经过的路线是:家-拐角处-办公室。这个就是"找1元钱"的路径。所以没有路径你怎么去找1元钱呀。flash同样的道理。
二、什么是路径?
从上面的例子我们应该理解了。路径就是通向一个位置的路线。简单的说就是flash对象的嵌套层次关系。有人可能对"对象"又迷糊了,前面我们介绍了,对象就是你操作的东西,比如图象、声音、电影剪辑(MovieClip)、按钮(Button)、文本框(TextField)、变量、组件(Component)等等,真正使用时我们用的是活生生的具体的对象,我们又给它给名字-实例,有时还说是对象。
到这里大家可以知道要控制一个对象我们要知道二点了:对象的路径和对象的名字。合在一起我们就可以指挥它了。
三、flash的老大-_root
我们做什么都是讲究个标准和依据的。同样flash也是这样,它定位对象的依据是主时间轴,另外有个外号叫"_root",这个_root是最响亮了,从它开始开始定位。老大呀,我们必须知道的呀。一个等式:主时间轴=_root。_root是唯一的,你想如果2个老大听谁的?
四、路径的分类
就分2类:绝对路径和相对路径。
五、绝对路径
绝对就是从根开始找了。对照看个例子:
①你过去的情人给你来了封信,你怕老婆知道,怎么办?藏起来。放在办公室的办公桌的最下面的抽屉。
②我们新建一个元件MC1,再建一个元件MC2,把MC1拖入里面。最后我们把MC2放在场景中。
看这2个例子:
①对象:情人的信
绝对路径:办公室-办公桌-抽屉。
②对象:MC1
绝对路径:_root-MC2
五、相对路径
以某对象做参照对应的路径。要用相对路径,作为"对象"自己要不糊涂才可以的,否则你干脆就用绝对路径了,也就是对象要看清楚自己的上下,看看上面有谁,下面有谁。自己上面的就是"老子": _parent。下面的是孙子了,所以根本不需要搭理它。对于自己层的就可以称:"是我"=this
在上面的例子中我们再加点:
①放信的抽屉中还有块糖
②再新建一个元件MC3,MC3拖入MC2。
继续看这2个例子:
①现在你已经进入办公室。(位置!)
对象:信
相对路径:_parent-_parent
现在你已经进入办公桌。(位置!)
对象:信
相对路径:_parent
现在你已经进入抽屉。(位置!)
对象:信
相对路径:this
对象:糖
相对路径:this
②现在处于主时间轴
对象:MC1
相对路径:_parent-_parent
对象:MC3
相对路径:_parent-_parent
现在处MC2主时间轴
对象:MC2
相对路径:_parent
现在处MC1主时间轴
对象:MC1
相对路径:this
说到这里,我自己都感觉到罗嗦了,简单一句话:相对路径看自己层是this,上层的是_parent。
六、点语法
就是这个点:".",用处大呀,后面的类离不开的,引用类的属性和方法。我们这样理解就"."="的"。
在上面我们表示路径时用"-"分割的,标准的是用点这样表示,比如上面的例子:
①现在你已经进入办公室。(位置!)
对象:信
相对路径:_parent._parent
引用对象时:_parent._parent.信
②现在处MC2主时间轴
对象:MC2
相对路径:_parent
引用对象时:_parent.MC2
让MC2表演:_parent.MC2.play()