Ciao a tutti.
Ho creato un menu verticale tramite un ciclo for che richiama dalla libreria dei movieclip concatenati e che dispone verticalmente tramite delle coordinate x e y.
Alcuni di questi movieclip contengono un sottomenu le cui voci sono richiamate sempre con lo stesso sistema di ciclo for:
Codice PHP:
/***** ARRAY *****/
var ArrayLabelMenu1:Array = new Array(); //ITA
ArrayLabelMenu1[0] = new Array("PROFILO",2,"ID","FEELING")
ArrayLabelMenu1[1] = new Array("COLLEZIONE",2,"GALLERY","THUMBNAIL VIEW")
ArrayLabelMenu1[2] = new Array("I MALLONI",0)
ArrayLabelMenu1[3] = new Array("CAMPAIGN",0)
ArrayLabelMenu1[4] = new Array("NEWS/EVENTS",0)
ArrayLabelMenu1[5] = new Array("STORE LOCATION",0)
ArrayLabelMenu1[6] = new Array("DOWNLOAD",0)
ArrayLabelMenu1[7] = new Array("SHOP ONLINE",0)
ArrayLabelMenu1[8] = new Array("CONTATTI",0)
function creaMenu()
{
var ArrayLabelMenuSel = _level0["ArrayLabelMenu"+_level0.lingua];
var interspazio = 2;
for(i=0; i < ArrayLabelMenuSel.length ; i++)
{
var pathContainer = _level0.mcMenuPrincipale.containerMenu;
var button = pathContainer.attachMovie("mcBtn","mcBtn" + i, i);
button.cicloi = i;
button.etichetta.BtnLabel.text = ArrayLabelMenuSel[i][0];
button.etichetta.BtnLabel.autoSize = true;
button.larghezza = button.etichetta.BtnLabel._width + 20;
button.altezza = 24;
button.ratio = button.larghezza/button.altezza;
button._y = Math.round((24 + interspazio)*i);
button.blackBase.onRollOver = function()
{
if(ArrayLabelMenuSel[this._parent.cicloi][1] != 0)
{
subMenu = this._parent.attachMovie("mcSottomenu","mcSottomenu",0);
subMenu._x = 11;
subMenu._y = 30;
for( k = 0 ; k < ArrayLabelMenuSel[this._parent.cicloi][1] ; k++ )
{
voc = subMenu.attachMovie("mcBtn_sottomenu" , "mcBtn_sottomenu" + k , k );
voc._y = Math.round((12 + interspazioSubmenu)*k);
voc.SubLabel.text = ArrayLabelMenuSel[this._parent.cicloi][2 + k];
voc.SubLabel.autoSize = true;
voc.onRollOver = function()
{
}
voc.onRollOut = function()
{
}
voc.onPress = function()
{
trace("voce sottomenu")
}
}
}
}
button.blackBase.onRollOut = function()
{
if(ArrayLabelMenuSel[this._parent.cicloi][1] != 0)
{
removeMovieClip(this._parent.mcSottomenu)
}
}
button.blackBase.onPress = function()
{
trace("voce principale")
}
}
}
Il problema nasce dal fatto che si attiva il rollout dei tasti principali non appena vado su uno dei tasti dei sotto menu.
Come si vede dal codice i movieclip dei sottomenu sono all'interno del mc istanziato "mcBtn" con l'attachMovie.
Come faccio a evitare questo problema?

Rispondi quotando