2010-12-02 54 views
0

我有一個項目,我在外部swf中加載,當它加載錯誤時我希望它在屏幕上顯示我已完成的錯誤,然後我想要防止它發生任何進一步。即沒有更多的幀沒有輸入更多axtionscript運行如何在發生錯誤時停止swf

我嘗試這樣做,沒有什麼

function ioError(e:IOErrorEvent):void { 
error_txt.text = e.text;  
trace(e.target.loaderURL); 
stop(); 
} 
+0

這段代碼究竟在哪裏?它是在主時間線上還是在MovieClip中? – artjumble 2010-12-02 21:52:14

+0

在主時間線 – mcgrailm 2010-12-02 21:53:36

回答

1

您需要註冊,將引發IOError功能的LoaderInfo對象的事件處理程序。我假設你創建了一個Loader來加載你的外部SWF。下面是Adobe的示例(http://www.adobe.com/livedocs/flash/9.0/ActionScriptLangRefV3/flash/display/LoaderInfo.html),稍微編輯以刪除類。

import flash.display.Loader; 
import flash.display.LoaderInfo; 
import flash.display.Sprite; 
import flash.events.*; 
import flash.net.URLRequest; 

var loader:Loader = new Loader(); 
loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler); 
var request:URLRequest = new URLRequest("some.swf"); 
loader.load(request); 
addChild(loader); 

function ioErrorHandler(event:IOErrorEvent):void { 
    trace("ioErrorHandler: " + event); 
}