2010-10-24 15 views
1

Le cœur de mon code est le suivant:Comment puis-je voir l'événement de chargement de l'image terminé?

var img: Image = new Image;
img.source = 'http: // ..........';
img.autoLoad = true;
img.cachePolicy = 'on';

img.addEventListener (Event.COMPLETE, function (event: Event): void {
trace ('! Loaded', img.source);
});
img.addEventListener (SecurityErrorEvent.SECURITY_ERROR, function (event: Event): void { '! Erreur'
trace (, img.source);
});
img.addEventListener (IOErrorEvent.IO_ERROR, function (event: Event): void { '! Erreur'
trace (, img.source);
});

J'ai trouvé que, l'événement complet ne se produit pas pour certaines images. Comment puis-je attraper un événement complet sans fuite de signal?

Répondre

2

Lorsque vous voulez charger une image (ou même un autre swf), la classe à utiliser est Loader. Un exemple rapide:

var loader:Loader = new Loader(); 
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, handlerFunction); 
loader.load(new URLRequest("http://somewhere/image.png")); 

Le seul genre de chose délicate est que les événements liés au chargement sont distribués par l'objet loader.contentLoaderInfo, pas l'objet loader.

Et la documentation toujours à portée de main: Loader Class

+0

Merci pour votre aide. J'ai trouvé que le problème est dans une autre partie de mon code. J'ai vérifié que les deux styles fonctionnent bien - "img.src = ..." et "using Loader". – Jason

+0

addEventListener (Event.COMPLETE) fonctionne très bien. – ufk