0

我知道以前有人问过这个问题,但是在浏览了我能找到的每个线程一个小时后,我决定直接问。

我有一个在 Flash IDE 中制作的 SWF,完全构建在一个文档类中(这是我使用文档类的第一个项目,但直到现在还没有任何问题)。在这里面有很多关于变量等的阶段的引用。我有另一个预加载主 SWF 的 SWF(同样都是在文档类和我尝试制作的第一个外部预加载器中完成的)。我遇到的问题是 - 由于主 SWF 在添加之前引用了阶段 - 我收到 #1009 错误。

我已经尝试了两种纠正这个问题的方法,但令我惊讶的是,都没有奏效。第一个是在加载之前添加 SWF 的加载器,如下代码所示:

package 
{
    import flash.display.Loader;
    import flash.net.URLRequest;
    import flash.events.ProgressEvent;
    import flash.display.MovieClip;
    import flash.events.Event;

    public class claude_loader extends MovieClip
    {
        public var main_movie:Loader = new Loader  ;
        public function claude_loader()
        {
            addChild(main_movie);
            trace(main_movie.stage);
            main_movie.load(new URLRequest("claudia_summers.swf"));
            main_movie.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, load_progress);

        }
    public function load_progress(e:ProgressEvent):void
    {
        trace(e.bytesLoaded+ " out of: " + e.bytesTotal);
    }
}

但这没有任何改变。我不太明白为什么,因为 main_movie 加载器有一个阶段(正如跟踪所证实的那样),所以根据我的推理,加载的 SWF 应该没有问题。

我还尝试将主 SWF 更改为在触发 ADDED_TO_STAGE 事件之前不运行,但该事件在添加之前被触发(即使我自己播放主 SWF?)。

有人可以我吗?我错过了一些非常明显的东西吗?

PS 我可以发布主要的 SWF 代码,但它的长度超过 1000 行,所以不确定哪个部分(如果有的话)会有所帮助。

4

1 回答 1

0

不知道如何,但我已经设法让 ADDED_TO_STAGE 监听器在加载的 swf 中工作,这已经解决了这个问题。

于 2013-06-06T17:42:57.170 回答