Bonjour à tous
Je me permets de solliciter une nouvelle fois vos lumières, un projet de classe me cassant la tête depuis trois jours...
Alors c'est assez simple sur le principe :
lorsqu'il y a un MOUSE_OVER (je n'ai pas mis l'intégralité de la classe, seulement la partie affichage du sous-menu), j'ai créé une fonction qui affiche :
* le sous-menu et des items chargés en xml
* un MovieClip appelé barre_blanche (parce que c'est une barre et qu'elle est blanche) qui doit apparaître en fond. Eh bien je suis tout prêt mais elles ont l'air de s'imbriquer les unes sur les autres, sans que ça fonctionne...
Une idée quelqu'un ? Merci d'avance !
Code ActionScript :
private function showSubMenu():void
{
if(container_mc!=null)
removeChild(container_mc);
container_mc=new MovieClip();
container_mc.alpha=0;
subClips_array=new Array();
for(var i:int=0;i<menu_array[id].length;i++)
{
var item:Item=new Item();
item.name=i.toString();//longueur du tableau du sous-menu
item.label_txt.text=menu_array[id][i].label; // nom des éléments du tableau
item.label_txt.textColor=0x2D2367; // couleur des éléments
item.label_txt.width=item.label_txt.textWidth+10; // placement
item.x=0;
item.y=30;
subClips_array.push(item);
item.mouseChildren=false;
item.buttonMode=true;
item.addEventListener(MouseEvent.MOUSE_OVER,setItemOver);
item.addEventListener(MouseEvent.MOUSE_OUT,setItemOut);
container_mc.addChildAt(item,0);
var fond_bleu2:Fond_bleu=new Fond_bleu();
var sous_menu:Barre_blanche=new Barre_blanche();
//sous_menu.width=fond_bleu2.width;
sous_menu.x=0;
sous_menu.y=30;
container_mc.addChildAt(sous_menu,1); }
for(var j:int=0;j<subClips_array.length;j++){if(j>0) subClips_array[j].x=subClips_array[j-1].x+subClips_array[j-1].width+10;}
//CONTENEUR SOUS-MENU
var fond_bleu:Fond_bleu=new Fond_bleu();
//container_mc.graphics.beginFill(0xFFFFFF,.5);
//container_mc.graphics.drawRect(0,20,container_mc.width,container_mc.height);
container_mc.width=fond_bleu.width;
container_mc.height=fond_bleu.height;
container_mc.x=clips_array[0].x-32;
if(container_mc.x+container_mc.width>stage.stageWidth)
container_mc.x=stage.stageWidth-container_mc.width-10;
addChild(container_mc);
Tweener.addTween(container_mc,{alpha:1,time:.1,transition:"easeOutQuad"});
Tweener.addTween(container_mc,{y:0,time:.1,transition:"easeOutQuad"});
}