FLASHAction基础之Movie Clip的控制
2023-10-29 16:26:45 • 经验
Movie Clip简称MC,在Flash中,MC是非常重要的一部分,灵活合理巧妙的使用MC,可以使您的Flash动画更加精彩,更加具有动感!在Flash 5中,MC给人的印象就好像是C++语言中的对象一样,它可以定义自己的“私有”变量,可以定义自己的函数,而且它可以响应事件并处理它,MC之间可以传递消息,相互控制和同步,定义一个MC可以复制成多个具有相同特征的MC,尽管MC不可以继承,但是我想,把MC叫做动画对象也是不过分的吧。MC的制作在前面的章节中已经有过详细的讲述,在本节主要介绍一下Flash中提供的一些与MC相关的函数和对象。 与Move Clip相关的函数及其一般形式 duplicateMovieClip(<target>,<new name>,<depth>) 复制一个现有的MC,其中target参数为现有MC的名字,new name是复制出来的MC的名字,depth是新MC所在的深度,值得注意的是每个MC的depth不可以相同,否则会造成显示混乱,depth大的MC将覆盖depth小的MC。 removeMovieClip(<target>) 删除一个复制出来的MC,其中target为复制出来的MC的名字。非复制出来的MC不可以被remove。删除的意思是指从内存和显示画面上同时清除。该Action只能与duplicateMovieClip配对使用。 loadMovie(<url>,<level|target>[,”GET”|”POST”]) 从一个url地址载入一个MC,用法不详。 unloadMovie(<level|target>) 卸载一个已经载入的MC,它只能跟loadMovie配对使用。 startDrag(<target>[,True|False][,left,top,right,bottom]) 开始拖拽一个MC,target为该MC的名字,第二个参数表示是否要将数标指针所定到该MC的中心,left,top,right,bottom四个参数表示MC只能在这两个坐标所定义的方框之内被拖拽。这四个参数可以是一个数值常量,也可以是一个算术表达式。 stopDrag() 停止鼠标对MC的拖拽。 onClipEvent(<事件>) MC事件响应语句。请看前一节的介绍。 swapDepths(<target>,<target>) 交换两个MC的深度值,这个语句是Flash 5新增语句,MC之间的控制更加方便了。 tellTarget(<target>) 这是一条非常有用的语句。它用于MC之间的相互控制和协调。比如一个MC可以告诉另一个MC什么时候需要跳转到哪一桢,一个MC还可以控制何时载入另一个MC,何时显示它,何时卸载它等等。合理的利用tellTarget语句,可以使您的动画更具有观赏性。 Movie Clip对象 Flash 5提供了一个Movie Clip对象,在上面所提到的前6个函数都在这个对象中重新进行了定义,它们完全可以取代前面那6个函数了。Movie Clip对象的定义如下: attachMovie(<idName>,<new name>,<depth>) 绑定一个Movie,产生一个库中MC的实体,其中的idName是库中MC的名字,new name是新生成MC的名字,depth为深度。好像构造函数似的。 duplicateMovieClip(<new name>,<depth>) 复制当前MC为新的MC,参数的意义同上。 getURL(<url>,<window>,<method>) 使浏览器浏览指定页面。Flash 5中已经单独提供了getURL函数,不知道封装到这里有什么特殊的含义??参数的意义请参看getURL函数的说明。 gotoAndPlay(<frame>) 跳转到指定帧并播放。frame参数可以是数值常量,字符串常量或者是算术表达式。 gotoAndStop(<frame>) 跳转到指定帧并停止播放。frame参数可以是数值常量,字符串常量或者是算术表达式。 loadMovie(<url>,<method>) 引入一个外部电影到指定层。url是一个web地址,method可以是空,GET,POST三个之一。 loadVariables(<url>,<method>) 从url地址指定的web服务器引入外部变量值。参数解释同上。 nextFrame() 相当于gotoAndStop(下一帧)。 play() 从当前桢开始播放当前的MC。 prevFrame() 相当于gotoAndStop(前一帧)。 removeMovieClip() 删除当前的MC,且该MC是用duplicateMovieClip函数创建的。 startDrag(<True|False>,<left>,<top>,<right>,<bottom>) 开始拖动当前的MC。第一个布尔参数表示是否将鼠标锁定在当前MC的中心位置,left,top,right,bottom四个参数定义了一个矩形,MC只能在这个矩形范围之内拖动。 stop() 停止当前MC的播放。 stopDrag() 停止拖动当前MC。 unloadMovie() 卸载当前的Movie,且当前Movie必须是由loadMovie载入的。