IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ActionScript 1 & ActionScript 2 Discussion :

flash 8 AS2 et XML


Sujet :

ActionScript 1 & ActionScript 2

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2009
    Messages : 8
    Par défaut [Résolu]flash 8 AS2 et XML
    Bonjour tout le monde.

    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 ).

    voici la structure de mon ficher xml

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

    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).
    Si il y a 11 balises <projet> dans <zeroneuf> et 5 dans <zerohuit>, flash affichera les 5 des <zerohuit> et les 6 derniers de <zeroneuf> (5+6=11 )


    J'ai joint les fichiers xml et fla.
    Fichiers attachés Fichiers attachés

  2. #2
    Membre Expert Avatar de dom_dev
    Profil pro
    Inscrit en
    Février 2006
    Messages
    2 073
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 2 073
    Par défaut
    bonjour,

    je pense que c'est là que ça ne va pas :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    var zeroneuf:Array = XPathAPI.selectNodeList(Portfolio.firstChild, chemin);
    var zerohuit:Array = XPathAPI.selectNodeList(Portfolio.firstChild, chemin);
    pour deux noeuds différents tu fais le même "appel"...

    mais je peux me tromper

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2009
    Messages : 8
    Par défaut
    Citation Envoyé par dom_dev Voir le message
    bonjour,

    je pense que c'est là que ça ne va pas :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    var zeroneuf:Array = XPathAPI.selectNodeList(Portfolio.firstChild, chemin);
    var zerohuit:Array = XPathAPI.selectNodeList(Portfolio.firstChild, chemin);
    pour deux noeuds différents tu fais le même "appel"...

    mais je peux me tromper
    J'ai essayé en mettant 2 variables différentes pour "chemin" mais le résultat est le même.

  4. #4
    Membre habitué
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2009
    Messages : 8
    Par défaut
    J'ai toujours pas trouver de solution a mon probleme.

    Ceci dit, j'ai ajouté qques lignes et nettoyé/adapté le code a mon projet.

    Ici le code AS
    Code AS2 : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    //
    /********** INITIALISATIONS ***********/
    this.infosChargement.texteCharge.text = "Chargement des projets en cours...";
    this.infosChargement._visible = true;
    //
    //
    import mx.transitions.Tween;
    import mx.transitions.easing.*;
    import mx.xpath.XPathAPI;
    concertXML = new XML();
    concertXML.load("portfolio.xml");
    concertXML.ignoreWhite = true;
    //
    //--- Chargement des valeurs une fois la base chargée ---
    //
    concertXML.onLoad = function(success:Boolean) {
    	if (success) {
    		infosChargement._visible = false;
    		chargeZeroNeuf("zeroneuf");
    		chargeZeroHuit("zerohuit");
     
    	} else {
    		infosChargement.texteCharge.text = "Erreur lors du chargement des projets.";
    	}
    };
    /********** Fonctions **********/
    //
    //--- Fonction qui charge les concerts de l'année 2009 ---
    //
    function chargeZeroNeuf(cat09:String) {
    	//
    	//--- On récupère la liste des concerts de la catégorie ---
    	//
    	var chemin09:String = "/concerts/"+cat09+"/*";
    	var zeroneuf:Array = XPathAPI.selectNodeList(concertXML.firstChild, chemin09);
    	//
    	for (i=0; i<zeroneuf.length; i++) {
    		this.attachMovie("concerts09", "concerts09"+i, i);
    		this["concerts09"+i]._x = 5;
    		this["concerts09"+i]._y = 0+20*(i+1);
    		this["concerts09"+i].numero.text = zeroneuf[i].attributes.numero;
    		this["concerts09"+i].jour.text = zeroneuf[i].attributes.jour;
    		this["concerts09"+i].date.text = zeroneuf[i].attributes.date;
    		this["concerts09"+i].heure.text = zeroneuf[i].attributes.heure;
    		this["concerts09"+i].ville.text = zeroneuf[i].attributes.ville;
    		this["concerts09"+i].lieu.text = zeroneuf[i].attributes.lieu;
    		this["concerts09"+i].festivite.text = zeroneuf[i].attributes.festivite;
    		var paire:Number = Math.round((i/2)-Math.floor(i/2));
    		if(paire==0){
    			this["concerts09"+i].fond_holder.attachMovie("fond0","fond0"+i,i);
    			}
    		if(paire==1){
    			this["concerts09"+i].fond_holder.attachMovie("fond1","fond1"+i,i);
    			}
    	}
    }
    //
    //--- Fonction qui charge les concerts de l'année 2008 ---
    //
    function chargeZeroHuit(cat08:String) {
    	//
    	//--- On récupère la liste des projets de la catégorie ---
    	//
    	var chemin08:String = "/concerts/"+cat08+"/*";
    	var zerohuit:Array = XPathAPI.selectNodeList(concertXML.firstChild, chemin08);
    	//
    	for (j=0; j<zerohuit.length; j++) {
    		this.attachMovie("concerts08", "concerts08"+j, j);
    		this["concerts08"+j]._x = 5;
    		this["concerts08"+j]._y = 260+20*j;
    		this["concerts08"+j].numero.text = zerohuit[j].attributes.numero;
    		this["concerts08"+j].jour.text = zerohuit[j].attributes.jour;
    		this["concerts08"+j].date.text = zerohuit[j].attributes.date;
    		this["concerts08"+j].heure.text = zerohuit[j].attributes.heure;
    		this["concerts08"+j].ville.text = zerohuit[j].attributes.ville;
    		this["concerts08"+j].lieu.text = zerohuit[j].attributes.lieu;
    		this["concerts08"+j].festivite.text = zerohuit[j].attributes.festivite;
    		var paire:Number = Math.round((j/2)-Math.floor(j/2));
    		if(paire==0){
    			this["concerts08"+j].fond_holder.attachMovie("fond2","fond2"+j,j);
    			}
    		if(paire==1){
    			this["concerts08"+j].fond_holder.attachMovie("fond3","fond3"+j,j);
    			}
    	}
    }


    Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    <?xml version="1.0" encoding="utf-8"?>
    <concerts>
    	<zeroneuf>
    		<concert numero="108" jour="Di" date="26/07/09" heure="21h00" ville="SOIGNIES" lieu="-" festivite="-">
    		</concert>
    		<concert numero="107" jour="Sa" date="25/07/09" heure="20h00" ville="AUTREPPE" lieu="-" festivite="Ducasse d'Autreppe">
    		</concert>
    		<concert numero="106" jour="Lu" date="13/07/09" heure="-" ville="DOUR" lieu="Plaine de la Machine à feu" festivite="Festival Les 3 terrils">
    		</concert>
    		<concert numero="105" jour="Di" date="28/06/09" heure="21h00" ville="JURBISE" lieu="Terrain de Foot de l'AS Jurbise" festivite="Fêtes de la Bière">
    		</concert>
    		<concert numero="104" jour="Sa" date="13/06/09" heure="21h00" ville="MONS" lieu="Maison de la Presse" festivite="Doudou">
    		</concert>
    		<concert numero="103" jour="Sa" date="13/06/09" heure="15h00" ville="BAISIEUX" lieu="Ecole communale" festivite="Fancy-Fair">
    		</concert>
    		<concert numero="102" jour="Sa" date="30/05/09" heure="23h00" ville="BOUGNIES" lieu="Centre Culturel" festivite="-">
    		</concert>
    		<concert numero="101" jour="Ve" date="29/05/09" heure="21h00" ville="QUIEVRAIN" lieu="-" festivite="Ducasse du Moulin">
    		</concert>
    		<concert numero="100" jour="Sa" date="16/05/09" heure="17h30" ville="GOSSELIES" lieu="-" festivite="Fête des Scouts">
    		</concert>
    	</zeroneuf>
    	<!--<anneezeroneuf>
    		<projet numero="2009" jour="2009" date="2009" heure="2009" ville="MONS" lieu="Imagipark" festivite="Imagiscène">
    		</projet>
    	</anneezeroneuf>-->
    	<zerohuit>
    		<concert numero="99" jour="Je" date="30/04/09" heure="23h00" ville="LEUZE-EN-HAINAUT" lieu="Chez March" festivite="Leuze en Folie">
    		</concert>
    		<concert numero="98" jour="Ve" date="24/04/09" heure="21h00" ville="MONS" lieu="Imagipark" festivite="Imagiscène">
    		</concert>
    		<concert numero="97" jour="-" date="04/04/09" heure="21h00" ville="HORNU" lieu="Maison du Peuple" festivite="Fête de la Jeunesse">
    		</concert>
    		<concert numero="96" jour="-" date="21/02/09" heure="20h00" ville="ELOUGES" lieu="Grand Place d'Elouges" festivite="Carnaval">
    		</concert>
    		<concert numero="95" jour="-" date="19/12/08" heure="10h00" ville="DOUR" lieu="Salle Culturellle (10h et 14h)" festivite="Le Père Noël est un Rockeur">
    		</concert>
    		<concert numero="94" jour="-" date="13/12/08" heure="16h45" ville="THUILLES" lieu="Rue de la cour 19" festivite="Le Père Noël est un Rockeur">
    		</concert>
    		<concert numero="93" jour="-" date="06/12/08" heure="20h00" ville="BAISIEUX" lieu="-" festivite="Soirèe de l'Athénée Royale de Quiévrain">
    		</concert>
    		<concert numero="-" jour="-" date="-" heure="-" ville="-" lieu="-" festivite="-">
    		</concert>
    	</zerohuit>
    	<!--<anneezerohuit>
    	</anneezerohuit>
    	<zerosept>
    	</zerosept>
    	<anneezerosept>
    	</anneezerosept>
    	<zerosix>
    	</zerosix>
    	<anneezerosix>
    	</anneezerosix>-->
    </concerts>

    Pour rappel, je souhaite (dans un premier temps) afficher le noeud "zeroneuf" puis le noeud "zerohuit". Mais en voulant afficher ces 2 noeuds, flash ne m'affiche pas la totalité du premier noeud ( "zeroneuf")

    J'ai remis les fichiers sources modifiées.
    Fichiers attachés Fichiers attachés

  5. #5
    Membre habitué
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2009
    Messages : 8
    Par défaut
    Solution trouvée!

    J'ai remplacer cette ligne :
    this.attachMovie("concerts08", "concerts08"+j, j);
    par
    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.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. flash CS3 / as2 / playliste xml mp3
    Par zonessai dans le forum ActionScript 1 & ActionScript 2
    Réponses: 5
    Dernier message: 22/04/2009, 12h38
  2. [FLASH MX2004] [AS2] XML
    Par aldo-tlse dans le forum ActionScript 1 & ActionScript 2
    Réponses: 1
    Dernier message: 27/08/2005, 21h20
  3. Réponses: 4
    Dernier message: 07/05/2004, 21h15
  4. [FLASH MX] Chargement de XML
    Par Dra_Gun dans le forum Flash
    Réponses: 13
    Dernier message: 13/02/2004, 09h40

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo