begin process at 2010 02 10 08:22:00
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Flash / Flash MX

 > 

Scripts

 > 

ActionScript

 > 

menu xml flash


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

menu xml flash

lundi 30 juin 2008 à 16:03:07 | menu xml flash

marcof

Bonjour à tous,

J'ai réussi à créer un menu avec un sous menumais je n'arrive pas à mettre un sous menu sous  le sous menu :)
Si quelqu'un pouvait m'aider

Code FLASH :
import mx.transitions.Tween;

var tabMenu:Array = new Array();
var diffHeight:Number;

var menu_mc:MovieClip = this.createEmptyMovieClip("menu_mc", 1);
 

loadMyXML("listeboutons.xml");

function loadMyXML(nameXML:String):Void {
 // ICI ON LOAD LE XML ET LE MET DANS UN TABLEAU SOUS LA FORME
 // Array(nomMenu, lien, Array(nomSousMenu, lienSousMenu));
 var document:XML = new XML();
 //création de l'objet XML
 document.ignoreWhite = true;
 //ignorer les sauts de ligne
 document.onLoad = function(success:Boolean) {
  if (success) {
   //nombre de menu xml
   var LengthXml:Number = document.firstChild.childNodes.length;
   for (i=0; i<LengthXml; i++) {
    var nom:String = document.firstChild.childNodes[i].attributes.name;
    var lien:String = document.firstChild.childNodes[i].attributes.lien;
    tabMenu.push(new Array(nom, lien));
    
    var ssmenuLength:Number = document.firstChild.childNodes[i].childNodes.length;
    var tabTemp = new Array();
    for (var j:Number=0; j<ssmenuLength; j++) {
     var ssname:String = document.firstChild.childNodes[i].childNodes[j].attributes.name;
     var sslien:String = document.firstChild.childNodes[i].childNodes[j].attributes.lien;
     tabTemp.push(new Array(ssname, sslien));
    }
    tabMenu[i].push(tabTemp);
   }
   // appel de la fonction qui va construire le menu
   constructMenu();
  } else {
   trace("Error loading XML file");
  }
 };
 document.load(nameXML);
}

function constructMenu():Void{
 for (var i:Number=0; i<tabMenu.length; i++) {
  this["menu"+i] = menu_mc.attachMovie("menu", "menu"+i, i);
  this["menu"+i]._y = (i) * this["menu"+i]._height;// ajustement hauteur avec (i+chiffre)
  this["menu"+i].num = i;
  this["menu"+i].mcText.mc_text.text = tabMenu[i][0];
  this["menu"+i].openMenu = false;
  
  this["ssmenu_mc"+i] = this.createEmptyMovieClip("ssmenu_mc", this.getNextHighestDepth());
  
  this["menu"+i].onRelease = function() {
   var yPos:Number = this._y + this._height;
   _root["ssmenu_mc"+this.num]._y = yPos;
   _root["ssmenu_mc"+this.num]._x = 10;//position x du ss menu
   
   if (!this.openMenu) {
    var yPos2:Number = 0;
    for (var j:Number=0; j<tabMenu[this.num][2].length; j++){
     this["ssmenu"+j] = _root["ssmenu_mc"+this.num].attachMovie("sousmenu", "ssmenu"+j, j);
     this["ssmenu"+j]._y = j * this["ssmenu"+j]._height;
     this["ssmenu"+j].num = j;
     this["ssmenu"+j].parentNum = this.num;
     this["ssmenu"+j].ss_ss_menu.mcText.mc_text_ss_menu.text = tabMenu[this.num][2][j][0];
     
     this["ssmenu"+j].onRelease = function() {
      trace("goto : "+tabMenu[this.parentNum][2][this.num][1]);
     }
     
     yPos2 += this["ssmenu"+j]._height;
    }
    for (var m:Number = this.num + 1; m<tabMenu.length; m++) {
     new Tween(menu_mc["menu"+m], "_y", Regular.easeIn, menu_mc["menu"+m]._y, menu_mc["menu"+m]._y + yPos2, 5, false);
     new Tween(_root["ssmenu_mc"+m], "_y", Regular.easeIn, _root["ssmenu_mc"+m]._y, _root["ssmenu_mc"+m]._y + yPos2, 5, false);
    }
    diff = yPos2;
   } else {
    for (var j:Number=0; j<tabMenu[this.num][2].length; j++){
     _root["ssmenu_mc"+this.num]["ssmenu"+j].removeMovieClip();
    }
    for (var m:Number = this.num + 1; m<tabMenu.length; m++) {
     new Tween(menu_mc["menu"+m], "_y", Regular.easeIn, menu_mc["menu"+m]._y, menu_mc["menu"+m]._y - diff, 5, false);
     new Tween(_root["ssmenu_mc"+m], "_y", Regular.easeIn, _root["ssmenu_mc"+m]._y, _root["ssmenu_mc"+m]._y - diff, 5, false);
    }
   }
   this.openMenu = !this.openMenu;
  }
 }
}



Code XML :
<?xml version="1.0" encoding="UTF-8"?>
    <listemenu>
      <menu name="Menu1" lien="#1">
        <sousmenu name="ss_menu1" lien="#1">
          <soussousmenu name="ss_ss_menu1" lien="#1"></soussousmenu>
          <soussousmenu name="ss_ss_menu2" lien="#2"></soussousmenu>
          <soussousmenu name="ss_ss_menu3" lien="#23"></soussousmenu>
          <soussousmenu name="ss_ss_menu3" lien="#23"></soussousmenu>
        </sousmenu>
        <sousmenu name="ss_menu2" lien="#75">
          <soussousmenu name="ss_ss_menu2_1" lien="#1"></soussousmenu>
          <soussousmenu name="ss_ss_menu2_2" lien="#2"></soussousmenu>
          <soussousmenu name="ss_ss_menu2_3" lien="#23"></soussousmenu>
          <soussousmenu name="ss_ss_menu2_4" lien="#23"></soussousmenu>
        </sousmenu>
        <sousmenu name="ss_menu3" lien="#45">
          <soussousmenu name="ss_ss_menu3_1" lien="#1"></soussousmenu>
          <soussousmenu name="ss_ss_menu3_2" lien="#2"></soussousmenu>
          
        </sousmenu>
        <sousmenu name="ss_menu4" lien="#1">
          <soussousmenu name="ss_ss_menu4_1" lien="#1"></soussousmenu>
          <soussousmenu name="ss_ss_menu4_2" lien="#2"></soussousmenu>
          <soussousmenu name="ss_ss_menu4_3" lien="#23"></soussousmenu>
        </sousmenu>
      </menu>
      <menu name="Menu2" lien="#">
        <sousmenu name="ss_menu2_1" lien="/BT/FAI_SOUSCRIPTION/souscription.jsp">
          <soussousmenu name="ss_ss_menu2_1_1" lien="#1"></soussousmenu>
          <soussousmenu name="ss_ss_menu2_1_2" lien="#2"></soussousmenu>
          <soussousmenu name="ss_ss_menu2_1_3" lien="#23"></soussousmenu>
        </sousmenu>
        <sousmenu name="ss_menu2_2" lien="#2_2">
          <soussousmenu name="ss_ss_menu2_2_1" lien="#1"></soussousmenu>
          <soussousmenu name="ss_ss_menu2_2_2" lien="#2"></soussousmenu>
          <soussousmenu name="ss_ss_menu2_2_3" lien="#23"></soussousmenu>
        </sousmenu>
        <sousmenu name="ss_menu2_3" lien="#2_3">
          <soussousmenu name="ss_ss_menu2_3_1" lien="#1"></soussousmenu>
          <soussousmenu name="ss_ss_menu2_3_2" lien="#2"></soussousmenu>
          <soussousmenu name="ss_ss_menu2_3_3" lien="#23"></soussousmenu>
        </sousmenu>
      </menu>
      <menu name="Menu3" lien="#3">
        <sousmenu name="ss_menu3_1" lien="#3_1">
          <soussousmenu name="ss_ss_menu3_1_1" lien="#1"></soussousmenu>
          <soussousmenu name="ss_ss_menu3_1_2" lien="#2"></soussousmenu>
          <soussousmenu name="ss_ss_menu3_1_3" lien="#23"></soussousmenu>
        </sousmenu>
        <sousmenu name="ss_menu3_2" lien="#3_2">
          <soussousmenu name="ss_ss_menu3_2_1" lien="#1"></soussousmenu>
          <soussousmenu name="ss_ss_menu3_2_2" lien="#2"></soussousmenu>
          <soussousmenu name="ss_ss_menu3_2_3" lien="#23"></soussousmenu>
        </sousmenu>
        <sousmenu name="ss_menu3_3" lien="#3_3">
          <soussousmenu name="ss_ss_menu3_3_1" lien="#1"></soussousmenu>
          <soussousmenu name="ss_ss_menu3_3_2" lien="#2"></soussousmenu>
          <soussousmenu name="ss_ss_menu3_3_3" lien="#23"></soussousmenu>
        </sousmenu>
      </menu>
      
    </listemenu>



Cette discussion est classée dans : menu, var, mc, number, ssmenu


Répondre à ce message

Sujets en rapport avec ce message

Gallerie Flash [ par theneoshaman ] Bonjours amis Flasheurs !Je suis en train de créer une gallerie dynamique en flash (mon dieu, que c'est original !) et j'ai un pb (sans déconner :p).. Attacher plusieurs clips dans un même clip créé dans une classe [ par buzhug35 ] Bonjour, Mon idée était de créer une horloge par le biais d'une classe UneHorloge à partir de 2 Clips de classes différentes : UnDisque et UneAiguille Comment insérer plusieurs clips de classe dans un autre clip de classe [ par buzhug35 ] Bonjour, Mon idée était de créer une horloge par le biais d'une classe UneHorloge à partir de 2 Clips de classes différentes : UnDisque et UneAiguill Actions bouttons pour activer animation AS3 [ par SASA3475 ] Bonjour à tous et bonne année 2009. Voilà, je suis graphiste et je suis en train de créer mon site entièrement sous flas Ajouter du texte depuis mon xml dans loadClip..; au secours [ par barytonlyrique ] Bonsoir à tous...Je débute en Flash et je souhaite créer une pellicule qui affiche toutes mes images par mon xml et qui navigue droite/gauche selon la probleme MC présent sur toutes les frames? [ par linece ] Bonjour Voila j utilise ce code pour une animation de photos en page de présentation. Seulement je souhaite qu il n apparaisse qu'au début du site et Booléen + tableau [ par lynxial ] Bonjour à tous, J'ai un petit soucis concernant les booléen, je m'explique : J'ai conçu un carré "mc1". A chaque clique sur le carré, un autre carr de l'aide !!! [ par ehp ] Bonsoir, Je me prends la tête sur un développement ça ne doit pas être sorcier mais je n'y arrive pas... Je voudrais que le dé "roule" quand on le l Positionner une piece a l'aide d'un Array [AS3] [ par jhsdofiughs ] voila un pti up pour essayer de resoudre le probleme ^^ Bonjour a tous, voila j'ai un petit probleme dans la réalisation d'un jeu et j'ose esperer que Carrousel en as2 [ par dwah6767 ] Hello les Flasheurs ;) Bon, je post pour la première fois je vais donc faire une présentation rapide, Sonderer Axel 24 ans, issus des beaux arts + é


Nos sponsors


Sondage...

Comparez les prix


HTC Magic

Entre 429€ et 429€

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 7,800 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales