现在,在Flash CS3及更高版本中(使用Actionscript 3),如果您拥有在图层中多个关键帧中使用的相同实例,并且您决定稍后分配或更改实例名称,则必须转到每个关键帧并设置实例名称.这是一个很大的麻烦.有没有更快或更好的方法来做到这一点?
注意:在AS2中,您可以使用MovieClip类的onLoad处理程序中的代码中的MovieClip的name属性来设置名称,以便一劳永逸地完成.不幸的是,在AS3中,您不能再设置name属性.
您可以在Flash中使用JSFL(一种基于javascript的自动化语言)来自动完成这样的任务.
单击文件>新建
从列表中选择"Flash JavaScript文件"
粘贴以下脚本
确保在FLA文件中选择了实例
单击JSFL脚本文件中的"运行(播放)"按钮
然后,您可以使用以下代码为所有选定的实例命名前缀和索引号:
var prefix:String = "myInstance_"; for(i in fl.getDocumentDOM().selection) { fl.getDocumentDOM().selection[i].name = prefix + i.toString(); }
这将导致您的实例名为myInstance_1,myInstance_2等.这主要是您扩展到特定需求的示例.
(有一点需要注意fl.trace()是你在调试时如何在JSFL中打印跟踪消息,花了一些时间才弄清楚)