Весь вечер голову ломаю — как получить доступ к прелоадеру картинки? Хочу его убрать после загрузки изображения, а не просто сверху закрыть изображением?

Код AS3:
private function xmlLoaded(e:Event)
{
xml = new XML(e.target.data.replace(/\r\n/gi,"\n"));
var cnt:Number = 0;
for each (var img:XML in xml.album.image) {
var ldr:Loader = new Loader();
var imgPan:Sprite = new Sprite();
imgPan.addChild(new Prel());
imgPan.addChild(ldr);
ldr.contentLoaderInfo.addEventListener(Event.OPEN, imgInit);
ldr.contentLoaderInfo.addEventListener(Event.COMPLETE, imgLoaded);
ldr.load(new URLRequest('../gallery/' + xml.album.attribute('cat') + '/' + xml.album.attribute('name') + '/' + img.attribute('src')));
images[cnt] = imgPan;
images[cnt].x = cnt *100;
images[cnt].y = 300;
addChild(images[cnt]);
cnt++;
}
}
private function imgLoaded(e:Event)
{
var bm:Bitmap = e.target.content as Bitmap;
bm.smoothing = true;
bm.x = - bm.width / 2;
bm.y = - bm.height / 2;
}
Я может вообще не тем путём пошёл?
Добавлено через 1 час 56 минут
разобрался, сделал так:

Код AS3:
private function xmlLoaded(e:Event)
{
xml = new XML(e.target.data.replace(/\r\n/gi,"\n"));
var cnt:Number = 0;
var imgPan:Sprite = new Sprite();
for each (var img:XML in xml.album.image) {
var ldr:Loader = new Loader();
var imgPlaceHolder:Sprite = new Sprite();
with (ldr) {
contentLoaderInfo.addEventListener(Event.OPEN, imgInit);
contentLoaderInfo.addEventListener(Event.COMPLETE, imgLoaded);
visible = false;
alpha = 0;
load(new URLRequest('../gallery/' + xml.album.attribute('cat') + '/' + xml.album.attribute('name') + '/' + img.attribute('src')));
}
imgPlaceHolder.addChild(ldr);
images[cnt] = imgPlaceHolder;
with (images[cnt]) {
x = 1000;
y = 300;
visible = false;
alpha = 0;
}
imgPan.addChild(images[cnt]);
cnt++;
}
var maska:Sprite = new Sprite();
maska.graphics.beginFill(0x000000);
maska.graphics.drawRect(0, 50, 960, 500);
maska.graphics.endFill();
imgPan.addChild(maska);
imgPan.mask = maska;
addChild(imgPan);
beginSlideshow();
}
private function imgInit(e:Event)
{
var imgPlaceHolder:Sprite = (e.target as LoaderInfo).loader.parent as Sprite;
var prel:Prel = new Prel();
prel.name = 'prel';
imgPlaceHolder.addChild(prel);
}
private function imgLoaded(e:Event)
{
var bm:Bitmap = e.target.content as Bitmap;
bm.smoothing = true;
bm.x = - bm.width / 2;
bm.y = - bm.height / 2;
var imgPlaceHolder:Sprite = (e.target as LoaderInfo).loader.parent as Sprite;
imgPlaceHolder.removeChild(imgPlaceHolder.getChildByName('prel'));
TweenMax.to((e.target as LoaderInfo).loader, .5, {autoAlpha: 1});
}
Гуру, посмотрите пожалуйста код, что я неправильно делаю (всё работает, в целях самосовершенствования)