tengo un sistema donde tengo un acordeon como menu, el caso es que dentro de cada panel o canvas del acordeon tengo links y tengo una imagen para cada link en visible false la idea es que al hacer click a un link yo pueda cambiarle el estilo y mostrar la imagen correspondiente al link. cabe mencionar que solo se puede mostrar una imagen a la vez. y solo un link tiene el cambio de estilo de tal forma que si hago click en otro link desaparece el anterio y aparece la nueva imagen con el estilo en pocas palabras limpia los elemnto y asigna los valores visible a la imagen correspondiente.
el problema surge cuando quiero ocultar la imagen. tengo mi acordeon y le hago un getChildren esto me devuelve un arreglo con los canvas a cada canvas le meto un getChildren para sacar sus elemento y aqui es donde tengo que ver si el elemento es imagen o no.
dejo el codigo del canvas y el de la funcion que hace el cambio
canvas
Código :
<mx:Canvas label="Hoteles" id="hotel" width="100%" height="100%" creationComplete="cargaP();" > <mx:LinkButton label="Hoteles" left="10" top="10" id="hotelesLink" click="cambioModulo2(cargadorModulos,'hoteles.swf',hotelesLink,hotelesFlecha);"/> <mx:Image source="css/imagenes/flecha.png" top="15" right="10" id="hotelesFlecha" visible="false"/> <mx:LinkButton label="Planes de Alojamiento" left="10" top="38" click="cambioModulo2(cargadorModulos,'alojamiento.swf',alojamientoLink,alojamientoFlecha);" id="alojamientoLink"/> <mx:Image source="css/imagenes/flecha.png" top="42.65" right="10" id="alojamientoFlecha" visible="false"/> <mx:LinkButton label="Categorias Hotel" top="66" left="10" click="cambioModulo2(cargadorModulos,'cathotel.swf',categoriasLink,categoriasFlecha);" id="categoriasLink"/> <mx:Image source="css/imagenes/flecha.png" top="70" right="10" id="categoriasFlecha" visible="false"/> <mx:LinkButton label="Servicios e Instalaciones" left="10" top="132" click="cambioModulo2(cargadorModulos,'Ser_e_Ins.swf',serviciosLink,catalogoFlecha);" id="serviciosLink"/> <mx:Image source="css/imagenes/flecha.png" right="10" top="104" id="catalogoFlecha" visible="false"/> <mx:LinkButton label="Tipos de Promociones" left="10" top="165" click="cambioModulo2(cargadorModulos,'promociones.swf',promoLink,promocionesFlecha);" id="promoLink"/> <mx:Image source="css/imagenes/flecha.png" right="10" top="170.35000000000002" id="promocionesFlecha" visible="false"/> <mx:LinkButton label="Catalogo Intereses" top="99" left="10" id="interesesLink" click="cambioModulo2(cargadorModulos,'intereses.swf',interesesLink,serviciosFlecha);"/> <mx:Image source="css/imagenes/flecha.png" top="136.65" right="10" id="serviciosFlecha" visible="false"/> </mx:Canvas>
funcion
Código ActionScript :
private function cambioBotonL(boton:LinkButton,image:Image):void
{
//Alert.show("Esta aqui")
var elementos:Array = menu.getChildren();
//var E:LinkButton = new LinkButton();
for(var i:Number = 0; i<elementos.length; i++)
{
var link:Array = new Array();
link=elementos[i].getChildren();
for(var j:Number=0; j<link.length; j++)
{
//Aqui validar si el elemto en la posiscion es una imagen o un link
Alert.show("El elemento es imagen ."+link[j].id);
//link[j].visible=false;
link[j].styleName="";
}
}
boton.styleName="linkB";
image.visible=true;
} gracias por la ayuda
