2012-12-03 50 views
0

所以我遇到了一個問題,我認爲這主要是因爲我在5年左右沒有與as2合作過,所以事情很朦朧。無論如何,我的問題是我需要在Flash電影中顯示PDF文件。爲此,我使用了後端運行SWFTools並將pdf轉換爲swf來顯示。 SWFTools輸出的AS2文件可以加載到AS3中,但我實際上無法控制(例如,調用stop())。onLoadComplete不能使用通過AS3加載的AS2 SWF

因此,我採取了使用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); 
} 

回答

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做了同樣的事情。如果你沒有這些選項,那麼是時候下載最新版本了!

相關問題