08/07/2009, 19:11
|
| | Fecha de Ingreso: junio-2008
Mensajes: 16
Antigüedad: 16 años, 5 meses Puntos: 0 | |
Respuesta: ya no puedo mas / addEventListener No sé si servirá colocar todo el código, pero nada se pierde.
Código:
var xmlLoader:URLLoader = new URLLoader();
var xmlData:XML = new XML();
xmlLoader.addEventListener(Event.COMPLETE, LoadXML);
xmlLoader.load(new URLRequest("datos.xml"));
function LoadXML(e:Event):void {
xmlData = new XML(e.target.data);
var regTOTAL:XMLList = xmlData.datos.attribute("fecha");
var TOTAL:Number = regTOTAL.length();
var NumCeldas = 0;
var MaxCeldas = 8;
SALIDA(xmlData,NumCeldas,MaxCeldas,TOTAL,MaxCeldas);
}
function Atachar(id:String):MovieClip{
var mcObj:Object = null;
mcObj = getDefinitionByName(id.toString());
return (new mcObj()) as MovieClip;
}
function SALIDA(sal:XML,Xinicial:Number,Xfinal:Number,T:Number,MAX:Number):void {
var AnchoRes = flash.system.Capabilities.screenResolutionX;
var AltoRes = flash.system.Capabilities.screenResolutionY;
var AltoCeldas = 80;
var posInicial = 0;
var VARfecha:XMLList = sal.datos.attribute("fecha"); // Elemento FECHA
var VARdia:XMLList = sal.datos.attribute("dia"); // Elemento FECHA
for(var i:int=Xinicial;i<Xfinal;i++){
var VARfechaELEMENTOS:XML = VARfecha[i];
var VARdiaELEMENTOS:XML = VARdia[i];
var mc:MovieClip = Atachar("dia");
mc.name = "dia"+i;
mc.diaFondo.alpha = .4;
mc.height = AltoCeldas;
mc.x = AnchoRes - mc.width;
mc.y = (posInicial)*AltoCeldas;
mc.FechaActual.text = VARfechaELEMENTOS;
mc.nombre.text = VARdiaELEMENTOS;
var VARhora:XMLList = sal.datos[i].nota.attribute("hora");
var VARanota:XMLList = sal.datos[i].nota.attribute("anota");
for(var j:int=0;j<VARhora.length();j++){//CADA ELEMENTO
var VARhoraELEMENTOS:XML = VARhora[j];
var VARanotaELEMENTOS:XML = VARanota[j];
mc["anota"+j].addEventListener(MouseEvent.CLICK, function (event:*):void { ABRIR(event,i) });
mc.anota.htmlText += VARhoraELEMENTOS+": "+VARanotaELEMENTOS;
addChild(mc);
}
for(var jj:int=VARhora.length();jj<4;jj++){//CADA ELEMENTO RESTANTE
mc["anota"+jj].visible = false;
mc["anota"+jj].mouseEnabled = false;
}
posInicial += 1;
}
Cita:
function ABRIR(event:MouseEvent,indice:int):void{
// indice : PADRE
// event.currentTarget.name : HIJO
trace(event.currentTarget.name+","+indice);
}
var barra:MovieClip = Atachar("barra");
barra.proximos.text = "Próximos: "+(T-Xfinal);
barra.anteriores.text = "Anteriores: "+(Xinicial);
barra.x = AnchoRes - barra.width;
barra.y = (posInicial)*AltoCeldas;
if((T-Xfinal)==0){
barra.btnProx.mouseEnabled = false;
}else{
barra.btnProx.mouseEnabled = true;
}
if((Xinicial)==0){
barra.btnAnt.mouseEnabled = false;
}else{
barra.btnAnt.mouseEnabled = true;
}
addChild(barra);
function borrarElementos(ini:Number,fin:Number){
for(var ii:int=ini;ii<fin;ii++){
var target:DisplayObject = getChildByName("dia"+ii);
removeChild(target);
}
removeChild(barra);
}
function Fproximo(event:MouseEvent):void{
borrarElementos(Xinicial,Xfinal);
if((Xfinal+MAX)>T){
SALIDA(sal,Xfinal,T,T,MAX);
}else{
SALIDA(sal,Xfinal,Xfinal+MAX,T,MAX);
}
}
function Fanterior(event:MouseEvent):void{
borrarElementos(Xinicial,Xfinal);
SALIDA(sal,Xinicial-MAX,Xinicial,T,MAX);
}
barra.btnProx.addEventListener(MouseEvent.CLICK,Fproximo);
barra.btnAnt.addEventListener(MouseEvent.CLICK,Fanterior);
}
|