【发布时间】:2011-07-19 09:34:50
【问题描述】:
是否可以获取和设置 swf 文件的查找位置(在 ActionScript 2/3 或 Flash Player 的 ActiveX API 中)?
我一开始尝试使用帧数(以确定正在播放电影的哪一部分),但有时整个动画有 2 帧,但没有帮助。
有什么想法吗? 谢谢。
【问题讨论】:
标签: actionscript-3 activex flash seek
是否可以获取和设置 swf 文件的查找位置(在 ActionScript 2/3 或 Flash Player 的 ActiveX API 中)?
我一开始尝试使用帧数(以确定正在播放电影的哪一部分),但有时整个动画有 2 帧,但没有帮助。
有什么想法吗? 谢谢。
【问题讨论】:
标签: actionscript-3 activex flash seek
如果您加载的 SWF 包含舞台时间轴上的所有动画(我的意思是顶级),那么您正在寻求的进度是:
var progress:Number = swf.currentFrame / swf.totalFrames;
如果你想设置搜索:
swf.gotoAndPlay ( progress * swf.totalFrames )
也可能是所有的动画不在顶层,而是在movieClip中,你知道哪个地址,我的意思是stage.getChildByName('something).getChildByName('something)...
但是,如果您有一个 swf,其中有多个影片剪辑,并且它们是独立播放的,那么我无能为力....
【讨论】:
据我所知,如果没有在 SWF 中编码某些内容,则并非如此。因为 Flash 中的动画可以嵌入到 MovieClips 中,或者完全在单个帧中编写脚本,所以没有简单的方法来检测总播放时间或动画的进度。任何 get/seek 功能,甚至是进度广播,都必须在 SWF 中编写脚本并通过ExternalInterface 访问。
【讨论】:
请更具体地说明您的问题。如果您的 swf 文件只有 2 帧,那么您要寻找的是什么?例如,您的 swf 是否加载了视频,而这正是您要寻找的内容? (在这种情况下,您可以获得视频对象的播放位置和状态的属性)。
没有更多信息,很难给出明确的答案。
【讨论】: