MovieClip,Sprite,Shape三者之间的区别
下面来了Sprite,这个3.0中我们打交道最多的容器了。一句话,它是去掉了时间轴的MovieClip(即阉割版MovieClip)。如我开头例子所说,倘若我们只是为了创建一个容器,那么Sprite是首选。甚至可以说,我们这些写代码的开发人员,90%以上的情况都只需要和Sprite打交道。含有时间轴的MovieClip一般是Flash工具创建出来的,往往只需要加载就可以了。准确的说,Sprite比ActionScript 2中的MovieClip不止少一个TimeLine,如装载。Sprite中也含有Graphic对象,这意味着,它也可以直接在其中代码绘图。
但我们始终要记住,Sprite不同于Shape,区别就在于Sprite是容器,而Shape不是。
从代码角度说,就是,Sprite可以addChild(),但Shape不可以。
此类用于使用 ActionScript 绘图应用程序编程接口 (API) 创建简单形状。Shape 类包括 graphics 属性,该属性使您可以从 Graphics 类访问方法。
Sprite 类也包括 graphics 属性,并且它包括不可用于 Shape 类的其它功能。例如,Sprite 对象是显示对象容器,而 Shape 对象不是(并且不能包含子显示对象)。由于此原因,Shape 对象会比包含相同图形的 Sprite 对象消耗的内存少。但是,Sprite 对象支持鼠标单击事件,而 Shape 对象不支持。