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

Flash Discussion :

[FLASH MX2004] *.swf avec fichiers externes


Sujet :

Flash

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Avril 2006
    Messages
    15
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2006
    Messages : 15
    Par défaut [FLASH MX2004] *.swf avec fichiers externes
    Bonjour,

    Je suis actuellement en train de développer un site avec une structure de base en flash. le principe est simple :
    Le client souhaite pouvoir intervenir sur le contenu sans avoir à ouvrir index.fla pour le republier de ce fait, j'ai eu l'idée de tout faire en actionscript externe.
    Mais erreur :
    Quand je modifie le fichier script.as (pour ajouter, modifier ou supprimer un élément de mon menuBar) il faut que je publie mon index.fla pour que les changements soient pris en compte. Existe-t'il une solution qui permette que les modifications de script.as soient prises en compte sans toucher à index.fla ???


    Note technique :

    Pour faire simple...
    1. dans mon swf :
    - design et éléments graphiques
    - calque action avec #include "script.as"
    - composant menuBar nommé "menu_bar"
    - zone de texte dynamique nommée "page_html" (formatée html, pour le remplissage)


    2. dans le même répertoire :
    - script.as (contient tous mon actionscript)
    - répertoire html (contient toutes les pages *.html à charger dans la zone de texte dynamique)


    merci d'avance, et adios

  2. #2
    Expert confirmé

    Avatar de freegreg
    Profil pro
    Inscrit en
    Août 2002
    Messages
    4 376
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Août 2002
    Messages : 4 376
    Par défaut
    Salut,

    non il n'existe aucune solution pour qu'une modification d'un .as soit répercuté sur un swf sans recompilation.
    C'est pour cette raison q'un swf est autonome, il marche tout seul sans les fichiers as.
    Passe par un fichier de configuration (en xml, c'est le plus pratique) chargé dynamiquement.
    Le client aura qu'a modifier le xml.
    De plus, quand le budget le permet, il faut plutôt prévoir une interface d'administration, que de laisser le client tripatouiller les fichiers configuration. Il va pas respecter le syantxe, effacer des données qu'il considère pas nécessaire...
    Alors s'il doit en plus modifier un fichier as,

  3. #3
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Avril 2006
    Messages
    15
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2006
    Messages : 15
    Par défaut
    le client a des connaissances de html, alors j'm'étais dit qu'avec un .as bien commenté, il aurait pu modifier sa barre de menu proprement...
    pour l'interface admin, j'voulais simplment ne pas me prendre la tête avec le flash... mais si il faut que j'me plonge dedans, tant pis...

    si il faut passer par un xml pour config, j'vais m'amuser ! héhééhéééé
    question syntaxe, ça se passe comment exactement ?

    extrait de mon script.as pour le moment :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    // ---------- configuration des couleurs & tailles
    menu_bar.setStyle("backgroundColor","0xFFFFFF");
    menu_bar.setStyle("borderColor","0xFFDDDDDD");
    menu_bar.setStyle("fontSize","11");
     
    // ---------- création du menu "présentation"
    Menu = menu_bar.addMenu("Présentation");
    Menu.addMenuItem({label:"Epcots", instanceName:"pres_epcots"});
    Menu.addMenuItem({label:"Retour à l'Accueil", instanceName:"pres_accueil"});
    j'allais commencer à fair eles listener... mais bon, du coup vaut peut être mieux revoir mon idée avant de continuer !

    j'dois avouer que du coup, j'sais aps du tout comment faire... ya un tuto qui traine dans le coin pour m'expliquer dans quelle galère j'm'embarque ?

  4. #4
    Expert confirmé

    Avatar de freegreg
    Profil pro
    Inscrit en
    Août 2002
    Messages
    4 376
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Août 2002
    Messages : 4 376
    Par défaut
    Je le vois comme cà :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <menubar>
      <configuration>
        <item property="background" value="0xFFFFFF" />
       ...
      </configuration>
      <menus>
         <menu label="Présentation">
            <item label="Epcots"  instanceName="pres_epcots" />
            ...
         </menu
         ...
      </menus>
    </menubar>
    Après dans flash :

    Code : 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
    var xmlConfiguration:XML = new XML();
    var self:Object = this;
    xmlConfiguration.onLoad(bOk_:Boolean) {
       if(bOk_) {
           self.initMenuBar();
       } else {
           trace("Erreur au chargement);
       }
    }
    xmlConfiguration.load("menubarConfiguration.xml");
     
    function initMenuBar() {
       var xnConfiguration:XMLNode = xmlConfiguration.childNodes[0];
       var xnMenus:XMLNode = xmlConfiguration.childNodes[1];
       for(var i:Number = 0; i <xnConfiguration.childNodes.length; i++) {
            menu_bar.setStyle(xnConfiguration.childNodes[i].attributes.property,xnConfiguration.childNodes[i].attributes.value);
       }
       for(var i:Number = 0; i <xnMenus.childNodes.length; i++) {
            Menu = menu_bar.addMenu(xnMenus.childNodes[i].attributes.label);
            for (var j:Number=0; j < xnMenus.childNodes[i].childNodes.length; j++) { 
                  var oMenuItem:Object = new Object();
                  oMenuItem.label = xnMenus.childNodes[i].childNodes[j].attributes.label;
                  oMenuItem.instanceName = xnMenus.childNodes[i].childNodes[j].attributes.instanceName;
                Menu.addMenuItem(oMenuItem);
          } 
       }
    }
    A tester mais il y a l'esprit (et un peu plus )

  5. #5
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Avril 2006
    Messages
    15
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2006
    Messages : 15
    Par défaut
    bon bon bon... merci pour les tuyaux, j'ai testé le flash... maaaaaaaaaaaais... monsieur flash m'a trouvé 2 erreurs...

    1. il manquait un petit guillemet fermant à ton code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    else {
           trace("Erreur au chargement);
       }
    erreur corrigée, pas de souci là dessus


    2. trouve pas la cause là... hmmm...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    **Erreur** Séquence = Séquence 1, calque = as, image = 1 :Ligne 3 : ')' ou ',' attendu
         xmlConfiguration.onLoad(bOk_:Boolean) {
     
    Total des erreurs ActionScript : 1 	 Erreurs signalées : 1

    sinon, vu le code que c'est, j'ai juste à faire un truc du style
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <item label="Epcots"  instanceName="pres_epcots" url="blabla.html"/>
    pour qu'ensuite dans flash j'ai la bonne apge qui charge dans mon texte dynamique avec une fonction ?

  6. #6
    Expert confirmé

    Avatar de freegreg
    Profil pro
    Inscrit en
    Août 2002
    Messages
    4 376
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Août 2002
    Messages : 4 376
    Par défaut
    La 2e c'est :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    xmlConfiguration.onLoad = function(bOk_:Boolean) {
    (Avec le compilateur c'est plus facile pour détecter les erreurs)

    pour url = "..." c'est fort possible que tu en ais besoin, je ne sais pas comment tu l'utilises, c'était pas dans ton code initial

  7. #7
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Avril 2006
    Messages
    15
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2006
    Messages : 15
    Par défaut
    - plus d'erreur à la ocmpil, ça fait plaisir
    - pour ce qui est de url="blabla.html" pas possible : url est un mot clé reservé... j'ai donc mis lien="blabla.html"

    par contre, menuBar toujours vierge...
    j'ai mis un petit
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    trace("Chargement ok");
    pour vérifier que le xml chargait bien, et tout fonctionne de ce point de vue là.

    j'ai mis un petit
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    trace("init du menu_bar - config du style");
    pour vérifier que la config chargait bien, et tout fonctionne de ce point de vue là.

    j'ai mis un petit
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    trace("init du menu_bar - remplissage du menu");
    pour vérifier que lle menu se remplissait bien, mais ça bug...

    ya donc surement un détail du code dans la suite qui ne s'adapte pas aux noms déjà donnés dans mon fichier flash...
    j'garde bon espoir... bientôt de bonnes nouvelles j'espère !

  8. #8
    Expert confirmé

    Avatar de freegreg
    Profil pro
    Inscrit en
    Août 2002
    Messages
    4 376
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Août 2002
    Messages : 4 376
    Par défaut
    Fait des trace des objets que tu récupère dans le xml.
    J'ai pu me gourrer dans les indices.

    Sinon poste ton code (en indiquant jusqu'ou ca semble marchait), j'essaierai d'y jeter un oeil

  9. #9
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Avril 2006
    Messages
    15
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2006
    Messages : 15
    Par défaut
    fichier xml : menuBar_cfg.xml
    Code : 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
    <menubar>
    	<configuration>
    		<item property="backgroundColor" value="0xFFFFFF" />
    		<item property="borderColor" value="0xFFDDDD" />
    		<item property="fontSize" value="11" />
    	</configuration>
     
    	<menus>
    		<menu label="Présentation">
    			<item label="Epcots"  instanceName="pres_epcots" url="html/pres_epcots.html" />
    			<item label="Retour à l'Accueil"  instanceName="pres_accueil" url="html/accueil.html" />
    		</menu>
     
    		<menu label="Activités">
    			<item label="Eurocots"  instanceName="act_eurocots" url="html/act_eurocots.html" />
    			<item label="Drash"  instanceName="act_drash" url="html/act_drash.html" />
    			<item label="Sys 2S"  instanceName="act_sys2s" url="html/act_sys2s.html" />
    		</menu>
    	</menus>
    </menubar>
    code dans l'actionscript :
    Code : 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
    var xmlConfiguration:XML = new XML();
    var self:Object = this;
    xmlConfiguration.onLoad = function(bOk_:Boolean) {
       if(bOk_) {
           self.initMenuBar();
    	   trace("Chargement ok");
       } else {
           trace("Erreur au chargement");
       }
    }
    xmlConfiguration.load("menuBar_cfg.xml");
     
    function initMenuBar() {
       var xnConfiguration:XMLNode = xmlConfiguration.childNodes[0];
       var xnMenus:XMLNode = xmlConfiguration.childNodes[1];
       for(var i:Number = 0; i <xnConfiguration.childNodes.length; i++) {
            menu_bar.setStyle(xnConfiguration.childNodes[i].attributes.property,xnConfiguration.childNodes[i].attributes.value);
    		trace("init du menu_bar - config du style");
       }
       for(var i:Number = 0; i <xnMenus.childNodes.length; i++) {
            Menu = menu_bar.addMenu(xnMenus.childNodes[i].attributes.label);
            for (var j:Number=0; j < xnMenus.childNodes[i].childNodes.length; j++) {
                  var oMenuItem:Object = new Object();
    			  trace("init du menu_bar - remplissage #1 du menu");
                  oMenuItem.label = xnMenus.childNodes[i].childNodes[j].attributes.label;
                  oMenuItem.instanceName = xnMenus.childNodes[i].childNodes[j].attributes.instanceName;
                Menu.addMenuItem(oMenuItem);
    			trace("init du menu_bar - remplissage #2 du menu");
          }
       }
    }
    j'ai juste changé le nom du xml externe


    affichage des alertes dans flash :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    init du menu_bar - config du style
    init du menu_bar - config du style
    init du menu_bar - config du style
    init du menu_bar - config du style
    init du menu_bar - config du style
    Chargement ok
    j'pige d'ailleurs pas qu'il y ait 5 trace() : ya 3 instructions... et un total de 6 param ! où est le 6ème trace() ? il est pas affiché parce que le fichié a fini de charger, et donc ça trace() "Chargement OK" ?

  10. #10
    Expert confirmé

    Avatar de freegreg
    Profil pro
    Inscrit en
    Août 2002
    Messages
    4 376
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Août 2002
    Messages : 4 376
    Par défaut
    non, c'est que tu as que 5 élements
    2 dans présentations
    3 dans activités

    rajoutes en dessous de oMenuItem.instanceName
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    trace(oMenuItem.label + " - " + oMenuItem.instanceName);
    Rajoutes aussi à la 2e ligne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    xmlConfiguration.ignoreWhite = true;

  11. #11
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Avril 2006
    Messages
    15
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2006
    Messages : 15
    Par défaut
    modifs apportées...

    ça me donne maintenant ça dans la sortie de monsieur flash :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    init du menu_bar - config du style
    init du menu_bar - config du style
    Chargement ok
    une question me vient à l'esprit :
    ce code marche-t'il sur flash mx 2004 en principe ??? parce que dans ma boîte, c'est cette version là...
    donc au pire, j'tenterais sur flash8 chez moi ce soir !

  12. #12
    Expert confirmé

    Avatar de freegreg
    Profil pro
    Inscrit en
    Août 2002
    Messages
    4 376
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Août 2002
    Messages : 4 376
    Par défaut

    Je ne comprends pas pouquoi tu as moins de choses qu'avant

    Sinon il n'y rien d'incompatible avec mx2004
    T'as pas modifié le xml ?

  13. #13
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Avril 2006
    Messages
    15
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2006
    Messages : 15
    Par défaut
    nan, j'avais rien modif dedans... j'viens de refair eun test avec la partie de code que j'avais mise sur mon post précédent, et pareil...

    j'ai ajouté des trace(), et j'me rends compte qu'aparament, le xml est lu que pour la config
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    	for (var i = 0; i<xnConfiguration.childNodes.length; i++) {
    		menu_bar.setStyle(xnConfiguration.childNodes[i].attributes.property, xnConfiguration.childNodes[i].attributes.value);
    		trace("init du menu_bar - config du style "+i);
    	}
    	trace("sortie de la première boucle 'for'");
    	for (var i = 0; j<xnMenus.childNodes.length; j++) {
    		trace("entrée dans la seconde boucle 'for'");
    ---> il ne trace pas "entrée dans la seconde boucle 'for'" alors qu'il trace "sortie de la première boucle 'for'" (juste au dessus)
    voilà la jolie réponse de monsieur flash :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    init du menu_bar - config du style 0
    init du menu_bar - config du style 1
    sortie de la première boucle 'for'
    Chargement ok
    étrange, nan ?

  14. #14
    Expert confirmé

    Avatar de freegreg
    Profil pro
    Inscrit en
    Août 2002
    Messages
    4 376
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Août 2002
    Messages : 4 376
    Par défaut
    En dessous de :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     Menu = menu_bar.addMenu(xnMenus.childNodes[i].attributes.label);
    Rajoute
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    trace(xnMenus.childNodes[i].attributes.label + " - " + xnMenus.childNodes[i].childNodes.length + " items");

  15. #15
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Avril 2006
    Messages
    15
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2006
    Messages : 15
    Par défaut
    bon bon bon...

    après maintes et maintes tentatives, j'me rend compte que j'perds vraiment mon temps... j'vais donc m'en remettre à du html à la con, histoire de ne pas proposer un site dans 6 mois...
    ça me saoule, parce qu'une fois cette ***** de navigation terminée, ça aurait été du gâteau, et j'aurais juste à changer le design pour les autres sites...

    tant pis ! merci pour ton aide...
    si le html est rapide à faire, j'referais surement un tour ici histoire de trouver la solution... j'suis pas trop du genre à abandonner

    "je reviendrais ! vous n'en avez pas encore fini avec moi !" (matrix)

  16. #16
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Avril 2006
    Messages
    15
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2006
    Messages : 15
    Par défaut
    juste une chose :

    tu pourrais me dire quelles sont les variables et quels sont les mots clés dans ce code ?
    Code : 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
    var xmlConfiguration:XML = new XML();
    var self:Object = this;
    xmlConfiguration.ignoreWhite = true;
    xmlConfiguration.onLoad = function(bOk_:Boolean) {
       if(bOk_) {
           self.initMenuBar();
          trace("Chargement ok");
       } else {
           trace("Erreur au chargement");
       }
    }
    xmlConfiguration.load("menuBar_cfg.xml");
     
    function initMenuBar() {
       var xnConfiguration:XMLNode = xmlConfiguration.childNodes[0];
       var xnMenus:XMLNode = xmlConfiguration.childNodes[1];
       for(var i:Number = 0; i <xnConfiguration.childNodes.length; i++) {
            menu_bar.setStyle(xnConfiguration.childNodes[i].attributes.property,xnConfiguration.childNodes[i].attributes.value);
          trace("init du menu_bar - config du style");
       }
       for(var i:Number = 0; i <xnMenus.childNodes.length; i++) {
            Menu = menu_bar.addMenu(xnMenus.childNodes[i].attributes.label);
            for (var j:Number=0; j < xnMenus.childNodes[i].childNodes.length; j++) {
                  var oMenuItem:Object = new Object();
               trace("init du menu_bar - remplissage #1 du menu");
                  oMenuItem.label = xnMenus.childNodes[i].childNodes[j].attributes.label;
                  oMenuItem.instanceName = xnMenus.childNodes[i].childNodes[j].attributes.instanceName;
                Menu.addMenuItem(oMenuItem);
             trace("init du menu_bar - remplissage #2 du menu");
          }
       }
    }
    comme ça, j'mets des variables plus explicites pour moi, ça m'évitera de changer des mots clés et donc que ça marche plus à cause d'une mauvaise syntaxe.

    merci d'avance !

  17. #17
    Expert confirmé

    Avatar de freegreg
    Profil pro
    Inscrit en
    Août 2002
    Messages
    4 376
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Août 2002
    Messages : 4 376
    Par défaut
    var xmlConfiguration:XML = new XML();
    var self:Object = this;
    xmlConfiguration.ignoreWhite = true;
    xmlConfiguration.onLoad = function(bOk_:Boolean) {
    if(bOk_) {
    self.initMenuBar();
    trace("Chargement ok");
    } else {
    trace("Erreur au chargement");
    }
    }
    xmlConfiguration.load("menuBar_cfg.xml");

    function initMenuBar() {
    var xnConfiguration:XMLNode = xmlConfiguration.childNodes[0];
    var xnMenus:XMLNode = xmlConfiguration.childNodes[1];
    for(var i:Number = 0; i <xnConfiguration.childNodes.length; i++) {
    menu_bar.setStyle(xnConfiguration.childNodes[i].attributes.property,xnConfiguration.childNodes[i].attributes.value);
    trace("init du menu_bar - config du style");
    }
    for(var i:Number = 0; i <xnMenus.childNodes.length; i++) {
    Menu = menu_bar.addMenu(xnMenus.childNodes[i].attributes.label);
    for (var j:Number=0; j < xnMenus.childNodes[i].childNodes.length; j++) {
    var oMenuItem:Object = new Object();
    trace("init du menu_bar - remplissage #1 du menu");
    oMenuItem.label = xnMenus.childNodes[i].childNodes[j].attributes.label;
    oMenuItem.instanceName = xnMenus.childNodes[i].childNodes[j].attributes.instanceName;
    Menu.addMenuItem(oMenuItem);
    trace("init du menu_bar - remplissage #2 du menu");
    }
    }
    }
    Tu peux changer ce qui est en gras.
    Par contre, Menu était dans ton code d'origine, je l'ai conserver mais c'est le nom d'une classe, il serait surement bon de changer ce nom aussi, peut-être que cela changera quelque chose

  18. #18
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Avril 2006
    Messages
    15
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2006
    Messages : 15
    Par défaut
    Citation Envoyé par freegreg
    Tu peux changer ce qui est en gras
    merci d'avoir pris la peine de me faire ça si proprement

    Citation Envoyé par freegreg
    Par contre, Menu était dans ton code d'origine, je l'ai conserver mais c'est le nom d'une classe, il serait surement bon de changer ce nom aussi, peut-être que cela changera quelque chose
    tout vientpeut être tout simplement de là !

    bon, j'teste avec des noms de vatiable persos et j'édite ce message pour le résultat...



    EDIT 1 :
    - j'ai remis des noms de variables plus explicites
    - j'ai viré toute la config du theme de ma menuBar
    ---> ça me la remplie par des "undifined" ce qui veut dire qu'il y a juste à trouver les bonnes variables... on approche ! on approche !

    EDIT 2 :
    ça me donne maintenant ça :
    Code : 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
    //
    // ===== config du thème :
    menu_bar.setStyle("themeColor", 0xFFEDEB);
    menu_bar.setStyle("fontFamily", "Arial");
    menu_bar.setStyle("fontSize", "11");
    //
    // ===== code de remplissage de la barre de menu
    var menus_cfg:XML = new XML();
    var self:Object = this;
    menus_cfg.onLoad = function(success:Boolean) {
    	if (success) {
    		self.exec_xml();
    	} else {
    	}
    };
    //
    // ===== fonction de remplissage de menu_bar
    menus_cfg.load("menuBar_cfg.xml");
    function exec_xml() {
    	var menus_cfg:XMLNode = menus_cfg.childNodes[0];
    	for (var m_cpt = 1; m_cpt<menus_cfg.childNodes.length; m_cpt=m_cpt+2) {
    		menu_cfg = menu_bar.addMenu(menus_cfg.childNodes[m_cpt].attributes.label);
    		for (var n_cpt = 1; n_cpt<menus_cfg.childNodes[m_cpt].childNodes.length; n_cpt=n_cpt+2) {
    			var MenuItem_as:Object = new Object();
    			MenuItem_as.label = menus_cfg.childNodes[m_cpt].childNodes[n_cpt].attributes.label;
    			MenuItem_as.instanceName = menus_cfg.childNodes[m_cpt].childNodes[n_cpt].attributes.instanceName;
    			MenuItem_as.lien = menus_cfg.childNodes[m_cpt].childNodes[n_cpt].attributes.lien;
    			menu_cfg.addMenuItem(MenuItem_as);
    		}
    	}
    }
    obligé de commencer le compte dans mon xml à "1" et non "0" et obligé d'avancer de 2 en 2... normal ?



    EDIT 3 :
    bon, tout marche niquel, j'me suis même fait mon petit theme perso... parfait !
    j'me demande donc maintenant comment faire l'interactivité...
    dis moi si sur le principe c'est ok et faisable :
    1. retrouver l'item sur lequel on clique dans le "menuBar"
    2. lancement d'une fonction pour :
    - retrouver le paramètre "lien" correspondant dans le xml
    - charger la page dans "page_html" (texte dynamique formatté en html sur le _root)

  19. #19
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Avril 2006
    Messages
    15
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2006
    Messages : 15
    Par défaut
    toujours pas de solutions à me proposer ???? j'vais finir par désespérer là !!!

Discussions similaires

  1. Réponses: 2
    Dernier message: 29/07/2006, 16h03
  2. Réponses: 5
    Dernier message: 14/01/2006, 20h30
  3. Réponses: 16
    Dernier message: 06/11/2005, 15h37
  4. [FLASH MX2004] Enregistration du fichier .swf
    Par Ladzhar dans le forum Flash
    Réponses: 1
    Dernier message: 20/09/2005, 14h40
  5. Réponses: 8
    Dernier message: 14/04/2005, 19h06

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