Site complet en flash : part 5

Retrouvez ici les topics qui font suite aux cours présentés sur explainMe. Si vous avez des questions par rapport aux cours, des remarques ou encore des infos à ajouter, c'est ici.

Site complet en flash : part 5

Messagepar explainMe sur Sam 21 Mar 2009 16:27

Topic relatif au cours Site complet en flash : part 5.

N'hésitez pas à poser vos questions ou débattre d'un sujet relatif au cours.
"If you can't explain it simply, You don't understand it well enough."

www.explain-me.com | forum.explain-me.com | infoTRASH
Avatar de l’utilisateur
explainMe
Administrateur
 
Messages: 267
Inscrit le: Ven 03 Oct 2008 19:09
Localisation: Toulouse
Reputation points: 4
Add reputation pointSubtract reputation point
Nombre de post utiles: 1

Re: Site complet en flash - part 5

Messagepar Julice sur Mar 28 Avr 2009 10:15

Bonjour

je voudrais pouvoir afficher les données de mon fichier xml dans flash pour avoir ce resultat ci :
Image

voici la structure de mon ficher xml

<portfolio>
<zeroneuf>
<projet></projet>
<projet></projet>
...
</zeroneuf>
<zerohuit>
<projet></projet>
<projet></projet>
...
</zerohuit>
</portfolio>

Les données se chargent dans un movieClip (ce MC correspond à une ligne du tableau que je voudrais afficher). Et dans le fichier xml, les données correspondent aux attributs d'une balise ( projet ).

Je n'ai pas de problème pour afficher les balises <zeroneuf> ou <zerohuit> séparément. Mais dès que je veux afficher les 2 l'une à la suite de l'autre, ça pose problème.
Si je ai 11 balises <projet> dans <zeroneuf>, flash n'affiche que 11 MC (lignes).

J'ai joint les fichiers xml et fla.
Vous n’avez pas les permissions appropriées afin de consulter les fichiers insérés à ce message.
Julice
Nouveau membre
 
Messages: 6
Inscrit le: Ven 10 Avr 2009 14:24
Reputation points: 0
Add reputation pointSubtract reputation point

Re: Site complet en flash - part 5

Messagepar explainMe sur Mer 29 Avr 2009 20:27

Bonjour et bienvenue à toi,

Juste un petit mot pour te signalé que j'ai bien vu ton message mais je suis surchargé en ce moment.

J'y jette un coup d'œil la semaine prochaine.

Désolé pour l'attente.
"If you can't explain it simply, You don't understand it well enough."

www.explain-me.com | forum.explain-me.com | infoTRASH
Avatar de l’utilisateur
explainMe
Administrateur
 
Messages: 267
Inscrit le: Ven 03 Oct 2008 19:09
Localisation: Toulouse
Reputation points: 4
Add reputation pointSubtract reputation point
Nombre de post utiles: 1

Re: Site complet en flash - part 5

Messagepar Julice sur Jeu 30 Avr 2009 06:20

Ok pas de soucis.
Julice
Nouveau membre
 
Messages: 6
Inscrit le: Ven 10 Avr 2009 14:24
Reputation points: 0
Add reputation pointSubtract reputation point

Re: Site complet en flash - part 5

Messagepar Julice sur Mar 12 Mai 2009 04:59

Solution trouvée!

J'ai remplacer cette ligne :
Citation:
this.attachMovie("concerts08", "concerts08"+j, j);
par
Citation:
this.attachMovie("concerts08", "concerts08"+j, this.getNextHighestDepth());
En faite, comme je faisais appel 2 fois a attachMovie, la 2eme fois j'ecrasais ceux que j'avais appeler précédemment. Avec, getNextHighestDepth() , le probleme est résolu.
Julice
Nouveau membre
 
Messages: 6
Inscrit le: Ven 10 Avr 2009 14:24
Reputation points: 0
Add reputation pointSubtract reputation point

Re: Site complet en flash - part 5

Messagepar explainMe sur Mar 12 Mai 2009 17:38

Super,

désolé je suis complètement débordé en ce moment et j'avais un peu oublié ton message( :oops: ...).

Content que tu ai finalement trouvé par toi-même.

Bon courage pour la suite.
"If you can't explain it simply, You don't understand it well enough."

www.explain-me.com | forum.explain-me.com | infoTRASH
Avatar de l’utilisateur
explainMe
Administrateur
 
Messages: 267
Inscrit le: Ven 03 Oct 2008 19:09
Localisation: Toulouse
Reputation points: 4
Add reputation pointSubtract reputation point
Nombre de post utiles: 1

Re: Site complet en flash - part 5

Messagepar Julice sur Mar 12 Mai 2009 19:10

Aucun problème.

Par contre, tant que je suis la, j'ai une autre question ...

Ce coup ci, c'est en AS3.

Quand on clique sur un bouton ( de menu) dans mon swf (a.swf), je charge un autre swf (b.swf), dans un movie clip. Cependant si je reclique sur ce bouton, le swf se recharge une 2eme fois sans effacer le précedent. donc je me retrouve avec 2 b.swf dans mon a.swf.

Je voudrais que quand je clique sur mon bouton, l'ancien swf soit écraser/effacer/ enfin qu'il disparaisse de mon a.swf . (Un peu comme avec loadMovie en AS2)

J'utilise ca pour charger mon swf.

function affiche (event:MouseEvent){
// création du chargeur
var chargeur:Loader = new Loader();
//url à atteindre
var maRequete:URLRequest = new URLRequest ("b.swf");
// chargement du contenu
chargeur.load (maRequete);
// ajout à la liste d'affichage
this.contenu.addChild(chargeur);
}
btn1.addEventListener(MouseEvent.CLICK, affiche);


Je suis pas pressé pour une réponse même si j'aimerais savoir :mrgreen:
Julice
Nouveau membre
 
Messages: 6
Inscrit le: Ven 10 Avr 2009 14:24
Reputation points: 0
Add reputation pointSubtract reputation point

Re: Site complet en flash - part 5

Messagepar explainMe sur Mar 12 Mai 2009 20:37

Rien de bien compliqué là dedans, il suffit, par sécurité, de vider conteneur, car la fonction addChild(); est un peu différente de la fonction loadMovie(); de l'AS2.

Comme tu as pu le remarquer, il faut utiliser l'objet Load pour charger le fichier, PUIS la fonction addChild(); pour l'ajouter à la scène.

Heureusement il existe une fonction removeChild(); qui supprime un objet de la scène (ou supprime un objet présent dans un autres ;) ).

Seul problème, removeChild(); attend un paramètre (le nom d'occurrence de l'objet à retirer). Du coup on sent très vite que ça va devenir pénible etc,...

Sauf que... Flash possède une petite propriété qui nous permet de connaître le nombre d'enfants dans un conteneur : numChildren (qui renvoie donc un chiffre).

Donc il suffit de faire une boucle qui test si ce chiffre est supérieur à zéro, et tant qu'il n'est pas égale à zéro, on supprime un enfant à l'index définit grâce à removeChildAt(index); (au hasard, le premier (index 0)) :

Code: Tout sélectionner
while(container.numChildren > 0)  {
      container.removeChildAt(0);
}


Où container est le nom d'occurrence du clip qui contient les fichiers chargés.

Donc en plaçant ça en début de ta fonction, ça devrait aller mieux.

Ta fonction devient :

Code: Tout sélectionner
function affiche (event:MouseEvent){
      //--- On vide le conteneur ---
      while(this.contenu.numChildren > 0)  {
             this.contenu.removeChildAt(0);
      }
      // création du chargeur
      var chargeur:Loader = new Loader();
     //url à atteindre
    var maRequete:URLRequest = new URLRequest ("b.swf");
    // chargement du contenu
    chargeur.load (maRequete);
    // ajout à la liste d'affichage
    this.contenu.addChild(chargeur);
}


Je n'ai pas testé le code, mais il devrait fonctionner.
"If you can't explain it simply, You don't understand it well enough."

www.explain-me.com | forum.explain-me.com | infoTRASH
Avatar de l’utilisateur
explainMe
Administrateur
 
Messages: 267
Inscrit le: Ven 03 Oct 2008 19:09
Localisation: Toulouse
Reputation points: 4
Add reputation pointSubtract reputation point
Nombre de post utiles: 1

Re: Site complet en flash - part 5

Messagepar Julice sur Mar 12 Mai 2009 20:57

Ca marche nickel.

Grand merci ;)
Julice
Nouveau membre
 
Messages: 6
Inscrit le: Ven 10 Avr 2009 14:24
Reputation points: 0
Add reputation pointSubtract reputation point

Re: Site complet en flash - part 5

Messagepar explainMe sur Mar 12 Mai 2009 21:08

Allez je vais être honnête, tu peux dire merci à la communauté mediabox, c'est sur leur forum que j'ai trouvé le bout de code qui va bien !

Il faut rendre à césar...

:D
"If you can't explain it simply, You don't understand it well enough."

www.explain-me.com | forum.explain-me.com | infoTRASH
Avatar de l’utilisateur
explainMe
Administrateur
 
Messages: 267
Inscrit le: Ven 03 Oct 2008 19:09
Localisation: Toulouse
Reputation points: 4
Add reputation pointSubtract reputation point
Nombre de post utiles: 1

Suivant

Retourner vers Suite des cours

Qui est en ligne ?

Utilisateurs parcourant actuellement ce forum : Aucun utilisateur inscrit et 1 invité

cron