Bug Menu AS3

Résolu
Orange73 Messages postés 1375 Date d'inscription dimanche 28 novembre 2004 Statut Membre Dernière intervention 2 août 2011 - 13 mai 2009 à 17:08
Orange73 Messages postés 1375 Date d'inscription dimanche 28 novembre 2004 Statut Membre Dernière intervention 2 août 2011 - 14 mai 2009 à 10:53
Bonjour à tous et à toutes,

Voilà, j'ai un menu AS3 généré via XML....

j'ajoute un addeventlistener MOUSE_OVER et MOUSE_OUT a chacun des elements de ce menu.

Pour que cela soit plus simple voici le code :

function createMenuItem(pCaption:String, pFormat:TextFormat, pMainMenu:XMLList)
{
    var tmpItem:SectionItem = new SectionItem();
    tmpItem.name = "item";
    tmpItem.mainMenu = pMainMenu;
   
    var tmpTxtField:TextField = CustomTextField("", pCaption, "caption", pFormat, "simple", 0, true);   
    tmpItem.menuTitle.addChild(tmpTxtField);

    tmpItem.btn.width = tmpItem.menuTitle.width;
    tmpItem.btn.height = tmpItem.menuTitle.height;
       
    tmpItem.buttonMode = true;
           
    return tmpItem;
}

var menuElements:XMLList = e.elements();
       
    for each(var sections in menuElements)
    {
        var menuItem:MovieClip = createMenuItem(sections.@caption, menuSectionsFormat, sections.menu);
        menuItem.name = "sectionItem_"+sections.@id;
        menuItem.id = sections.@id;
       
        mainContainer.contentContainer.sectionsMenu.addChild(menuItem);
       
        menuItem.x = START_MENU_X;
        START_MENU_X += 20 + menuItem.width;
       
        menuItem.btn.addEventListener(MouseEvent.ROLL_OVER, mouseOverSection);
        menuItem.btn.addEventListener(MouseEvent.ROLL_OUT, mouseOutSection);
        menuItem.btn.addEventListener(MouseEvent.CLICK, mouseClickSection);
    }

function mouseOverSection(e:MouseEvent):void
{
    if(currentSection != e.currentTarget.parent.id)
    {
        e.currentTarget.parent.gotoAndPlay("on");
    }
}

function mouseOutSection(e:MouseEvent):void
{
    if(currentSection != e.currentTarget.parent.id)
    {
        e.currentTarget.parent.gotoAndPlay("off");
    }
}

Le probleme est que lorsque je fais un rollover par la gauche de l'element, le rollover saute. c'est a dire que si je glisse la souris de gauche a droite ca alterne entre mouseOver et mouseOut...

Avez vous deja eu ce probleme ?

Merci

-- Orange73 --
"L'homme n'est pas fait pour travailler, la preuve c'est que cela le fatigue" (Voltaire)

2 réponses

Orange73 Messages postés 1375 Date d'inscription dimanche 28 novembre 2004 Statut Membre Dernière intervention 2 août 2011
14 mai 2009 à 10:53
C'est bon j'ai trouvé le probleme et je l'ai résolu.

J'avai un clip qui suivai ma souris et qui etait en dessus de tout les clip present... du coup bug...

Merci quand meme

-- Orange73 --
"L'homme n'est pas fait pour travailler, la preuve c'est que cela le fatigue" (Voltaire)
3
Orange73 Messages postés 1375 Date d'inscription dimanche 28 novembre 2004 Statut Membre Dernière intervention 2 août 2011
14 mai 2009 à 10:30
Je viens de trouver le probleme ...

Si je remplace
mainContainer.contentContainer.sectionsMenu.addChild(menuItem);
Par
addChild(menuItem);

Sa fonctionne... mais moi je veux placer le items dans le clip sectionsMenu...

D'ou vient ce bug ?

-- Orange73 --
"L'homme n'est pas fait pour travailler, la preuve c'est que cela le fatigue" (Voltaire)
0
Rejoignez-nous