我一直收到错误#1009,因为我试图在ioErrorHandler函数中使用addChild显示一个Alert Box。
trace("IOErrorEvent: " + event);
运行正常。但是我的Alert Box类中有Error #1009
。
////---- Display Alert Box
private function displayAlertBox():void
{
alertBoxContainer.x = stage.stageWidth - alertBoxBg.width >> 1;
alertBoxContainer.y = stage.stageHeight - alertBoxBg.height >> 1;
addChild(alertBoxContainer);
}
这是我的代码。除了错误事件处理程序内部,Alert Box类在其他任何地方都可以正常工作。你真的可以在错误事件处理程序中使用addChild吗?我尝试从错误事件处理程序内部调用一个函数来显示Alert Box类,但仍然无法正常工作。
//Display Alert Box
private var alert_Box:alertBox;
var _userIdRequest:URLLoader = new URLLoader();
_userIdRequest.load(new URLRequest("http://www.example.com/New_User_Id.php"));
_userIdRequest.addEventListener(flash.events.Event.COMPLETE, CompleteHandler);
_userIdRequest.addEventListener(flash.events.IOErrorEvent.IO_ERROR, ioErrorHandler);
////--- Error Handler;
function ioErrorHandler(event:flash.events.IOErrorEvent):void
{
// not able to connect to the server
trace("IOErrorEvent: " + event);
alert_Box = new alertBox();
addChild(alert_Box);
}
答案 0 :(得分:0)
我尝试了新项目,一切顺利。
我将此代码放入第一帧。我正在使用Flash CC
import flash.events.Event;
//Display Alert Box
var alert_Box:alertBox;
var _userIdRequest:URLLoader = new URLLoader();
_userIdRequest.load(new URLRequest("http://www.example.com/New_User_Id.php"));
_userIdRequest.addEventListener(flash.events.Event.COMPLETE, CompleteHandler);
_userIdRequest.addEventListener(flash.events.IOErrorEvent.IO_ERROR, ioErrorHandler);
////--- Error Handler;
function ioErrorHandler(event:flash.events.IOErrorEvent):void {
// not able to connect to the server
trace("IOErrorEvent:");
alert_Box = new alertBox();
addChild(alert_Box);
alert_Box.x = stage.stageWidth/2;
alert_Box.y = stage.stageHeight/2;
}
function CompleteHandler (e:Event):void {
trace("complete!");
}
在我的情况下, alertBox 是一个正方形...
我认为你的alertBox类有两个问题吗?
答案 1 :(得分:0)
我发现了我的问题。我总共有3节课:
splashScreen类 consumerId类 AlertBox类
加载的主类是splashScreen类。在splashScreen类的内部,我调用了consumerId类来创建一个id。如果连接到我的服务器的网址出现问题。触发IOErrorEvent错误,并且应该从consumerId类内部显示AlertBox类。好吧,经过大量的测试。我无法在consumerId类中加载AlertBox。这就是我得到#1009错误的方法。一旦我从consumerId类的IOErrorEvent错误处理程序内部将静态函数发送回slashScreen类。我可以从splashScreen类内部调用AlertBox类,并显示Alert Box。