Précharge avec plusieurs fichiers?

  • nornholdj
  • Novice
  • Novice
  • Avatar de l’utilisateur
  • Inscription: Mar 18, 2009
  • Messages: 18
  • Status: Offline

Message Juillet 24th, 2009, 7:09 am

Salut,

J'ai deux fichiers. Fla. L'un est mon preloader et la seconde est mon SWF principal pour le reste du site. Mon preloader des charges de cours mon SWF principal en montrant une barre affichant le pourcentage de ce qui a été chargé. Mon main.swf à son tour charge également quelques fichiers XML pour afficher les informations qui y figurent. J'ai essayé le chargement des fichiers XML dans le preloader et je pense qu'il se charge mais quand je vais à la section de mon film principal qui utilise ce xml il envoie une erreur qui dit: "Impossible d'accéder à une propriété ou une méthode d'une référence d'objet null". Je suppose thats parce que j'essaie de le recharger dans mon film principal. Im just ne sais pas comment je dois m'y prendre. Im aussi peu sûr de comment je peux additionner les valeurs totales de ces deux fichiers pour la barre de progression. Im AS3 utiliser avec CS3 et voici mon code.

preloader.swf
Code: [ Select ]
var websiteLoader:Loader = new Loader();
websiteLoader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, websiteLoading);
websiteLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, websiteLoaded);    
websiteLoader.load(new URLRequest("main.swf"));

websiteLoader.load(new URLRequest("xml/MSPInfo.xml"));

function websiteLoading(e:ProgressEvent):void
{
    var loaded:Number = e.bytesLoaded / e.bytesTotal;
    pLoaded.text = Math.ceil(loaded * 100) + " % Loaded";
    preloader.SetProgress(loaded);
    //trace(e.bytesLoaded + "/" + e.bytesTotal);
}

function websiteLoaded(e:Event):void
{
    removeChild(pLoaded);
    removeChild(longLogo);
    removeChild(preloader);
    //removeChildAt(0);
    pLoaded = null;
    
    preloader.visible = false;
    preloader = null;
    addChild(websiteLoader);
}
  1. var websiteLoader:Loader = new Loader();
  2. websiteLoader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, websiteLoading);
  3. websiteLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, websiteLoaded);    
  4. websiteLoader.load(new URLRequest("main.swf"));
  5. websiteLoader.load(new URLRequest("xml/MSPInfo.xml"));
  6. function websiteLoading(e:ProgressEvent):void
  7. {
  8.     var loaded:Number = e.bytesLoaded / e.bytesTotal;
  9.     pLoaded.text = Math.ceil(loaded * 100) + " % Loaded";
  10.     preloader.SetProgress(loaded);
  11.     //trace(e.bytesLoaded + "/" + e.bytesTotal);
  12. }
  13. function websiteLoaded(e:Event):void
  14. {
  15.     removeChild(pLoaded);
  16.     removeChild(longLogo);
  17.     removeChild(preloader);
  18.     //removeChildAt(0);
  19.     pLoaded = null;
  20.     
  21.     preloader.visible = false;
  22.     preloader = null;
  23.     addChild(websiteLoader);
  24. }

Main.swf
Code: [ Select ]
//setup loading for xml page with MSP data
var MSPLoader:URLLoader = new URLLoader();
var MSPRequest:URLRequest = new URLRequest("xml/MSPInfo.xml");
MSPLoader.load(MSPRequest);
MSPLoader.addEventListener(Event.COMPLETE, loadData);
var MSPDoc:XML;
  1. //setup loading for xml page with MSP data
  2. var MSPLoader:URLLoader = new URLLoader();
  3. var MSPRequest:URLRequest = new URLRequest("xml/MSPInfo.xml");
  4. MSPLoader.load(MSPRequest);
  5. MSPLoader.addEventListener(Event.COMPLETE, loadData);
  6. var MSPDoc:XML;


Merci,

-Jordanie
  • Anonymous
  • Bot
  • No Avatar
  • Inscription: 25 Feb 2008
  • Messages: ?
  • Loc: Ozzuland
  • Status: Online

Message Juillet 24th, 2009, 7:09 am

  • graphixboy
  • Control + Z
  • Mastermind
  • Avatar de l’utilisateur
  • Inscription: Juil 11, 2005
  • Messages: 1828
  • Loc: In the Great White North
  • Status: Offline

Message Juillet 24th, 2009, 10:10 am

Code: [ Select ]
websiteLoader.load(new URLRequest("main.swf"));

websiteLoader.load(new URLRequest("xml/MSPInfo.xml"));
  1. websiteLoader.load(new URLRequest("main.swf"));
  2. websiteLoader.load(new URLRequest("xml/MSPInfo.xml"));


ces deux lignes se battent parce que votre utilisation de l'objet chargeur de même pour les deux en même temps. Ainsi, techniquement votre remplaçant la commande de chargement d'une milliseconde après vous appelez ça la première fois.

Je voulais attendre pour appeler le fichier xml jusqu'à l'autre appel est terminé, soit dans le rappel pour le chargeur que vous avez ou via un objet totalement nouveau chargeur si vous avez besoin du code XML en même temps que la charge film principal.
If at first you don't succeed F1... If that doesn't work try Google!
//// Designer, Developer & Teacher - Interactive, Motion and 3D \\\\
Portfolio at WhenImNotSleeping.com

Afficher de l'information

  • Total des messages de ce sujet: 2 messages
  • Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 36 invités
  • Vous ne pouvez pas poster de nouveaux sujets
  • Vous ne pouvez pas répondre aux sujets
  • Vous ne pouvez pas éditer vos messages
  • Vous ne pouvez pas supprimer vos messages
  • Vous ne pouvez pas joindre des fichiers
 
 

© 2011 Unmelted, LLC. Ozzu® est une marque déposée de Unmelted, LLC