Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/actionscript-3/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Actionscript 3 如何在actionscript中加载外部swf_Actionscript 3_Flash - Fatal编程技术网

Actionscript 3 如何在actionscript中加载外部swf

Actionscript 3 如何在actionscript中加载外部swf,actionscript-3,flash,Actionscript 3,Flash,我遇到了一个让我发疯的问题 我有两个flash文件,我想在点击按钮后将第二个flash文件加载到第一个flash文件中 所以我有一个按钮监听器,我跳转到一个特定的框架,在那里我的代码 var loader_mc : Loader = new Loader(); var urlRequest : URLRequest = new URLRequest("2.swf"); loader_mc.load(urlRequest); addChild(loader_mc); 为了调试的目的,我在执行它的

我遇到了一个让我发疯的问题

我有两个flash文件,我想在点击按钮后将第二个flash文件加载到第一个flash文件中

所以我有一个按钮监听器,我跳转到一个特定的框架,在那里我的代码

var loader_mc : Loader = new Loader();
var urlRequest : URLRequest = new URLRequest("2.swf");
loader_mc.load(urlRequest);
addChild(loader_mc);
为了调试的目的,我在执行它的帧上贴了标签,并在舞台上放了一些文本,使其长了几秒钟

如果我把它注释掉,在我点击按钮后,它跳转到那个帧,测试文本显示几秒钟,然后电影重新开始


如果我取消注释它,它似乎加载了swf,但随后电影似乎重新启动,速度相当快,并且显示了测试文本。因此,第二个swf未加载。它似乎加载了第一个flash文件并重放了它,但测试文本,这只是在最后

停下来();在该帧中,而不是包含文本的某些帧中,这些文本可能足够长,也可能不够长,加载程序无法完成文件加载。更好的方法是:添加监听器,以了解加载程序何时完成或发生了什么错误。同样的结果。第一个flash文件正在重播,然后添加侦听器以通知您进度。在2.swf中是否有任何操作时间线的东西?您能发布您的文件以便我们进行调试吗?如果您没有加载资源的句柄,那么玩frames和
addChild()
简直是不好的。这是因为每次Flash的播放头到达另一个关键帧时,前一帧的全部内容以及加载的SWF都会被销毁。因此,无论如何,不要在主时间线上使用帧,而只用于纯动画。要解决您的问题,您确实需要在进行加载的框架上
stop()
,并使用
Event.COMPLETE
IOErrorEvent.IO\u ERROR
的处理程序处理事件,以查明您的SWF正在加载、加载或未能加载。