Pb pour stopper une anim loadée

cs_inaden Messages postés 618 Date d'inscription mercredi 4 avril 2007 Statut Membre Dernière intervention 27 août 2010 - 5 nov. 2009 à 13:20
cs_inaden Messages postés 618 Date d'inscription mercredi 4 avril 2007 Statut Membre Dernière intervention 27 août 2010 - 7 nov. 2009 à 15:20
Bonjour,
voilà, je loade une anim avec la fonction suivante :
public function appelGoodies(urlGoodies:URLRequest):void{
//trace("   <<<<   APPELGoodies   >>>> :: urlGoodies = "+urlGoodies);
        loaderGoodies.load(urlGoodies);
porteGoodies.addChild(loaderGoodies);
        loaderGoodies.contentLoaderInfo.addEventListener(Event.INIT, iniImage);
        loaderGoodies.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, ioErrorImage);
loaderGoodies.contentLoaderInfo.addEventListener( ProgressEvent.PROGRESS, chargementGoodies);
loaderGoodies.contentLoaderInfo.addEventListener( Event.COMPLETE, chargementGoTermine);
}

Jusque là tout va bien. Le problème c'est que lorsque je change de rubrique, je fais disparaître cette anim... mais j'aimerais la stopper.

Elle disparaît bien mais ne se stoppe pas.

J'ai essayez tout un tas de truc :

porteGoodies.stop();//  --> rien ne se passe

J'ai vue que
//trace("else   porteGoodies = "+loaderGoodies.content);// renvoie [object MainTimeline]

Alors j'ai essayé :
loaderGoodies.content.stop(); // message d'erreur "appel à la méthode stop peut-être non défini.


Pourtant je pensais qu'en ciblant la "MainTimeLine" on pouvais faire un stop.
PAs de chance, MainTimeLine n'apparait pas dans l'aide AS3 quand on fait un F1
Et plein d'autres qui ne donne rien. (comme mon porteGoodies est dans un clip lependu, j'ai essayé lependu.porteGoodies, porteGoodies.loaderGoodies....)
Si quelqu'un a une idée.
Merci d'avance


Tout vient à qui sait attendre

2 réponses

cs_inaden Messages postés 618 Date d'inscription mercredi 4 avril 2007 Statut Membre Dernière intervention 27 août 2010 2
7 nov. 2009 à 15:13
Je suis vraiment bloqué par ce truc débile...
à titre indicatif :


trace("else   porteGoodies.getChildAt(0) = "+porteGoodies.getChildAt(0));//[objet Loader]
trace("else   porteGoodies.currentFrame) = "+porteGoodies.currentFrame);//renvoie 0 systématiquement
trace("else   porteGoodies.loaderGoodies.content = "+porteGoodies.loaderGoodies.content);//erreur
trace("else   loaderGoodies.content = "+loaderGoodies.content);// renvoie [object MainTimeline]
trace("else   porteGoodies.contentPath) = "+porteGoodies.contentPath);// renvoie undefind
trace("else   loaderGoodies.content.parent.getChildAt(0) = "+loaderGoodies.content.parent.getChildAt(0));//renvoie [object MainTimeline]
trace("else   porteGoodies.getChildAt(0) = "+loaderGoodies.getChildAt(0));//[objet MainTimeline]
trace("else   loaderGoodies.content.totalFrames = "+loaderGoodies.content.totalFrames);//erreur


Ce que je ne comprend pas, c'est pourquoi lorsque l'objet ciblé renvoie mainTimeLine, il ne prend pas le stop, mais me renvoie un message d'erreur du style :
1119: Accès à la propriété stop peut-être non définie, via la référence de type static flash.display:DisplayObject.
0
cs_inaden Messages postés 618 Date d'inscription mercredi 4 avril 2007 Statut Membre Dernière intervention 27 août 2010 2
7 nov. 2009 à 15:20
Bon, c'est de la bidouille mais ça à l'air de marcher

en fait je suis parti de trace(loaderGoodies.content is MovieClip);
qui renvoie true... donc il n'y a pas de raison.
Si je fais loaderGoodies.content.stop();
Il m'envoie boulé (erreur, displayObject... impossible, pas bonne méthode, retourne voir ta mère...)
alors j'ai fait :
var lanim = loaderGoodies.content;
lanim.stop();
Et là... miracle...ça marche.

Par contre, histoire de pas mourir idiot, si quelqu'un peut me dire pourquoi ça marche.
Merci d'avance.


Tout vient à qui sait attendre
0
Rejoignez-nous