Bonjour à tous !
Je tente de réaliser une classe qui hérite de MovieClip et dont l'objectif est qu'à la fin de son execution, ce clip contienne toutes les news de mon site.
Ces news sont stockées dans des fichiers txt nommés "newsI.txt" (I étant le numéro de la news) allant de 1 jusqu'à n.
Voici le code en question :
public class ExtracteurNews extends MovieClip
{
private var conteneurTextes:URLLoader;
private var fichier:URLRequest;
private var numero:int = 1;
private var news:Array;
public function ExtracteurNews()
{
news = new Array();
extraireNews(1);
}
public function extraireNews(num:int):void
{
var loadListener:Object = new Object();
conteneurTextes = new URLLoader();
fichier = new URLRequest("news/news"+num+".txt");
conteneurTextes.addEventListener(Event.COMPLETE, onComplete);
conteneurTextes.addEventListener(IOErrorEvent.IO_ERROR, fin);
conteneurTextes.load(fichier);
}
// Le chargement est terminé
private function onComplete(evt:Event):void
{
var conteneur:Sprite = new Sprite();
var donnees:URLVariables = new URLVariables(evt.target.data);
var format3:TextFormat = new TextFormat();
format3.size = 17;
format3.align = TextFormatAlign.CENTER;
format3.font = "St Charles";
var contenu:TextField = new TextField();
contenu.text = donnees.contenu;
contenu.setTextFormat(format3);
contenu.width = 285;
contenu.wordWrap = true;
contenu.mouseWheelEnabled = false;
contenu.selectable = false;
contenu.autoSize = TextFieldAutoSize.CENTER;
conteneur.addChild(contenu);
var format2:TextFormat = new TextFormat();
format2.size = 15;
format2.font = "St Charles";
var auteurDate:TextField = new TextField();
auteurDate.text = "News postee par "+donnees.auteur+" le "+donnees.date;
auteurDate.setTextFormat(format2);
auteurDate.width = 280;
auteurDate.y = 50;
conteneur.addChild(auteurDate);
news.push(conteneur);
numero++;
extraireNews(numero);
}
private function fin(evt:IOErrorEvent):void
{
var conteneur:Sprite;
var posy:int = 0
while(news.length>0)
{
conteneur = news.pop();
conteneur.y = posy;
addChild(conteneur);
posy += conteneur.height + 100;
}
this.dispatchEvent(new Event("newsChargee"));
}
}
Mon problème maintenant :
Au cours de ma boucle while, tout à la fin, je sais que ma variable conteneur n'est pas vide. Elle a une hauteur définie qui dépend, en toute logique, de la taille de ma news.
La taille de mon MovieClip, en revanche, reste à zéro malgré que je lui ajoute plusieurs conteneurs... Et si je tente de la forcer à autre chose que zéro, mon MovieClip est désespérément vide...
Help ?...