【发布时间】:2011-01-31 01:20:38
【问题描述】:
有没有简单的方法来获取帧标签的帧号?
【问题讨论】:
标签: actionscript-3 frame
有没有简单的方法来获取帧标签的帧号?
【问题讨论】:
标签: actionscript-3 frame
我尚未对其进行测试,但以下应该可以工作。 Scene 对象的标签属性是一个包含标签和帧数的对象数组。
private function getFrameByLabel( frameLabel: String ):int
{
var scene:Scene = yourMovieClip.currentScene;
var frameNumber:int = -1;
for( var i:int ; i < scene.labels.length ; ++i )
{
if( scene.labels[i].name == frameLabel )
frameNumber = scene.labels[i].frame;
}
return frameNumber;
}
【讨论】:
yourMovieClip.currentLabels 代替scene.labels(因为所有标签都在当前范围内,在这种情况下)。如果您只想解析当前场景中的标签,而不是跨电影中的所有场景,也应该使用此方法。
【讨论】:
FrameLabel 对象来操作。一旦解决了这个问题,从对象中获取帧号就很简单了。
currentFrame 返回影片剪辑的当前帧号。
import flash.display.FrameLabel;
var frameNumber:int = -1;
frameNumber = MyMovieClip.currentFrame;
【讨论】: