如何在as3中播放两个swf文件

时间:2012-11-09 07:54:05

标签: actionscript-3 actionscript actionscript-2

我希望在我的动作脚本项目中播放两个swf文件。在这两个文件中,一个swf文件在系统前面的检测面上工作。其他swf播放flv文件。当检测到面部时,必须先调入播放器不是播放器必须播放flv文件。

我知道如何加载swf文件但我无法处理启动和停止播放器的功能。

代码片段显示我如何加载外部swf文件。我将在评论中解释每行代码

    public function videos(view:Sprite)
    {
        this.box = view;//IT GETS Sprite object from other class because of               need to display the player also.
        request = new URLRequest("Untitled-1.swf");
        currentSWF=new MovieClip();


        loader= new Loader();
        loader.load(request);

        box.addChild(loader);
        currentSWF = MovieClip(loader.content);
        loader.addEventListener(Event.COMPLETE,loadComplete);
        //addChild(loader);
        currentSWF.gotoAndPlay(1);//when i put this line of code in  comments it plays the external swf also. 


    }

我希望你明白我的疑问。任何人都可以解释如何处理我的事情。我是这个动作剧本的新手。请帮助我

1 个答案:

答案 0 :(得分:0)

加载的文件自动播放,除非你明确告诉他们不要。你必须听取Event.INIT事件,并在那里停止电影:

loader.AddEventListener(Event.INIT, initLoader);

function initLoader (event:Event)
{
    MovieClip(event.currentTarget.content).stop();
}

这会在电影附加到舞台之前以及开始播放之前停止播放 - 所以除非你再次启动它,否则它不会这样做。

请注意,您不应在loader.contentINIT事件之前以任何方式访问COMPLETE,因为很可能内容未加载。因此,您应该将所有操纵操作放入COMPLETE事件:

box.addChild(loader);
loader.addEventListener(Event.COMPLETE, loadComplete);

function loadComplete (event:Event)
{
    // Now it’s safe to access the `content` member:
    currentSWF = MovieClip(loader.content);

    // Of course this one would play the movie again, so you probably want
    // to call that later on a button click or something.
    currentSWF.gotoAndPlay(1);
}
相关问题