外部SWF到外部SWF时间线通信,Flash,AS2

问题描述 投票:0回答:4

Flash CS4,AS2

我做了一个互动之旅。可以在这里看到:

http://www.92YTribeca.org/Tour点击底部图片

4个部分中的每一个都是外部swf并加载到1级。我想在一个swf(平面图)上按一个按钮来加载另一个swf(设施租赁)并在swf的时间轴上精确定位一个特定的帧。

我尝试了很多不同的方法,最终在第一帧加载swf并忽略其余代码谈论时间轴。我知道我可以把这个swf分成更多外部swf并得到我想要的结果,但如果可以,我宁愿使用代码。

我想做什么?如果是这样,我该如何编写代码?

谢谢!

flash actionscript-2 external timeline
4个回答
0
投票

你想做什么绝对是可能的。您需要等到SWF加载后才能告诉它转到特定的帧。最简单的方法是使用MovieClipLoader类。

var loader:MovieClipLoader = new MovieClipLoader();
loader.addListener(this);

function onLoadComplete(loadedClip) {
    loadedClip.gotoAndStop(5);
}

loader.loadClip("floorplan.swf", targetClip);

这会将floorplan.swf加载到名为“targetClip”的占位符中,并且一旦加载,就必须跳转到第5帧。

有关详细信息,请参阅MovieClipLoader文档:http://livedocs.adobe.com/flash/9.0/main/wwhelp/wwhimpl/js/html/wwhelp.htm?href=00001993.html


0
投票

由于你设法完美地加载它们,我想这不是问题。一个常见的问题是,当剪辑完全加载时,您需要调用“gotoAndStop”函数,当调用onLoadInit侦听器的MovieClipLoader处理程序时,您将执行此操作。


0
投票

试试这个:

var MC1:MovieClipLoader = new MovieClipLoader();
MClistener = new Object();
MClistener.onLoadComplete = function() {
     trace("LOADED COMPLETED");
};    
MC1.addListener(MClistener); 
MC1.loadClip("Whatever.swf", "adLoader");

0
投票

我一直在寻找root swf和加载的swf之间的沟通一段时间,这非常有用。

var loader:MovieClipLoader = new MovieClipLoader();
loader.addListener(this);
function onLoadComplete(loadedClip) {
  loadedClip.gotoAndStop(2);
}
loader.loadClip("chapter1.swf", targetClip);

我唯一想知道的是如何通过开启(按下)动作来构建两个加载的swf而不是onLoadComplete动作。

© www.soinside.com 2019 - 2024. All rights reserved.