在AS3中快速设置关键帧上的实例名称

时间:2009-01-03 22:37:58

标签: flash actionscript-3 timeline

现在在Flash CS3及更高版本中(使用Actionscript 3)如果你有一个在图层中多个关键帧中使用的相同实例,并且你决定稍后分配或更改实例名称,则必须转到每个关键帧并设置实例名称。这是一个很大的麻烦。有更快或更好的方法吗?

注意:在AS2中,您可以使用MovieClip类的onLoad处理程序中的代码中的MovieClip的name属性来设置名称,以便一劳永逸地完成。不幸的是,在AS3中,您不能再设置名称属性。

6 个答案:

答案 0 :(得分:6)

您可以在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中打印跟踪消息,花了一些时间来弄明白)

答案 1 :(得分:1)

查找和替换实例名称的半自动方式是:

  1. Flash主菜单>编辑> 查找和替换(CTRL + F)
  2. “当前文档”中搜索
  3. “符号”
  4. 姓名 [您的实例的符号]
  5. 确保实时修改已取消选中。
  6. 在某处写下实例名称,然后复制到剪贴板。
  7. 对每个实例重复以下操作:

    1. 按“查找和替换”面板上的查找下一个
    2. 双击“属性”面板中的实例名称文本字段,以选择“全部”
    3. 粘贴您的新实例名称,覆盖原始
    4. ENTER 提交更改。
    5. 玩得开心!这是使用Flash IDE中的工具的最佳方式

答案 2 :(得分:0)

在之前将实例命名为,将它们复制到多个关键帧! (在按F6之前 - 插入新的关键帧)这始终是最佳解决方案。

答案 3 :(得分:0)

如果所有实例框架都是串行的,那么您只需在其中分配名称。 否则'查找和替换实例名称'可能是最好的解决方案。

答案 4 :(得分:0)

改变乘法帧的最佳方式(但不是最大的conman)

  1. 选择该时间线中的所有帧次
  2. 点击“编辑乘法帧”按钮
    此按钮位于洋葱皮附近的时间线下方

  3. 更改实例名称

  4. 这将更改所有框架的实例名称

答案 5 :(得分:0)

此扩展程序将在多个关键帧上设置实例名称: http://ajarproductions.com/blog/2010/03/30/set-instance-name-on-multiple-frames/