展开电报 return 1
as3 totalFrames return 1
我正在尝试加载一个动画。
我想知道动画的结尾并避免循环。
var myLoader:Loader = new Loader( );
var myLoaderReq:URLRequest = new URLRequest("anim.swf");
myLoader.load(myLoaderReq);
addEventListener(Event.ENTER_FRAME , enterFrameListener );
addChild(myLoader);
myLoader.x = 10;
myLoader.y = 20;
function enterFrameListener(event:Event):void
{
var mc:MovieClip = event.currentTarget as MovieClip;
trace(mc.currentFrame);
if( mc.currentFrame == mc.totalFrames )
{
mc.removeEventListener(Event.ENTER_FRAME , enterFrameListener );
trace("end of movie reached");
}
}
为了测试,我使用从 http://www.leconcombre.com/movies/movies1us.html
下载的 swf
有什么想法吗?
thnx
您使用的currentTarget是指
addEventListener(Event.ENTER_FRAME , enterFrameListener );
这应该是您的 MainTimeline,如果您再添加一帧,那么应该是 return 2 of totalFrames。
正如 BadFeelingAboutThis 所说,只需替换:
var mc:MovieClip = event.currentTarget as MovieClip;
来自
var mc:MovieClip = myLoader.content as MovieClip;
您还必须确认您正试图操纵 anim.swf 的 MainTimeline。
我正在尝试加载一个动画。
我想知道动画的结尾并避免循环。
var myLoader:Loader = new Loader( );
var myLoaderReq:URLRequest = new URLRequest("anim.swf");
myLoader.load(myLoaderReq);
addEventListener(Event.ENTER_FRAME , enterFrameListener );
addChild(myLoader);
myLoader.x = 10;
myLoader.y = 20;
function enterFrameListener(event:Event):void
{
var mc:MovieClip = event.currentTarget as MovieClip;
trace(mc.currentFrame);
if( mc.currentFrame == mc.totalFrames )
{
mc.removeEventListener(Event.ENTER_FRAME , enterFrameListener );
trace("end of movie reached");
}
}
为了测试,我使用从 http://www.leconcombre.com/movies/movies1us.html
下载的 swf有什么想法吗?
thnx
您使用的currentTarget是指
addEventListener(Event.ENTER_FRAME , enterFrameListener );
这应该是您的 MainTimeline,如果您再添加一帧,那么应该是 return 2 of totalFrames。
正如 BadFeelingAboutThis 所说,只需替换:
var mc:MovieClip = event.currentTarget as MovieClip;
来自
var mc:MovieClip = myLoader.content as MovieClip;
您还必须确认您正试图操纵 anim.swf 的 MainTimeline。