Задача, в принципе тривиальная, но возникла странная проблема.
Вот, к примеру, код с сайта Макромедии:

Код:
var loadListener:Object = new Object();
loadListener.onLoadInit = function(target_mc:MovieClip):Void {
trace(">> loadListener.onLoadInit()");
trace(">> =============================");
trace(">> target_mc._width: " + target_mc._width); // 315
_root.imageWidth = target_mc._width; //вот тут хочу выдернуть значение ширины
}
var mcLoader:MovieClipLoader = new MovieClipLoader();
mcLoader.addListener(loadListener);
var mc:MovieClip = this.createEmptyMovieClip("mc", this.getNextHighestDepth());
mcLoader.loadClip("http://www.w3.org/Icons/w3c_main.png", mc);
trace(_root.imageWidth); // выдает undefined
По событию onLoadInit прекрасно определяется ширина картинки. Но я никак не могу выдернуть значение ширины в некую глобальную переменную, доступную из любого места в дальнейшем коде. Она доступна либо внутри события onLoadInit, либо, если я вешаю туда функцию - внутри это функции.
Попытки присвоить внутри этой функции значение ширины некой глобальной переменной ни к чему не приводят, поскольку код выполняется не дожидаясь загрузки картинки.
Может быть, кто-то сталкивался с подобной проблемой?
Заранее благодарен за ответ.