onLoadComplete不能与通过AS3加载的AS2 SWF一起使用

时间:2012-12-03 21:55:15

标签: actionscript-3 actionscript-2

所以我遇到了一个问题,我认为这主要是因为我在大约5年内没有和as2合作过,所以事情非常朦胧。无论如何,我的问题是我需要在flash电影中显示PDF文件。为此,我已经在后端运行SWFTools并将pdf转换为swf进行显示。但是,SWFTools会输出AS2文件,我可以将其加载到AS3中但我实际上无法控制(例如,调用stop())。

因此我使用AS2加载器加载到AS3项目中,该项目负责加载转换后的pdf swfs。我遇到的问题是,当我在AS3中加载AS2文件时,监听器似乎没有被触发,但是当它自己运行时它就会被激发。

这是我正在运行的代码。总结当我运行此代码时,它自己的“LOADED”正确打印到输出并且加载的SWF停止。但是,当我通过AS3容器运行时,swf正确加载,但“LOADED”跟踪永远不会发生,并且不会执行停止。

非常感谢你的帮助!

var loader:MovieClipLoader

var listener =  new Object();
listener.onLoadComplete = function(loadedClip) {
    trace("LOADED");
    loadedClip.stop();
}

loadFile("data/testing.swf");

function loadFile(target){
    loader = new MovieClipLoader();
    loader.addListener(listener);
    loader.loadClip(target, holder_mc);
}

1 个答案:

答案 0 :(得分:0)

SWF工具支持支持AS3,您需要在选项中进行更改。

1. Open your PDF in swf tools
2. Edit=>Options
3. Viewer tab
4. Check "No viewer" and flash version 9. (Or use the simple viewer) 
    - You can also do the "Insert stop after each frame"

我知道这是因为我用PDF做了同样的事情。如果您没有这些选项,那么是时候下载最新版本了!