Ver Mensaje Individual
  #1 (permalink)  
Antiguo 22/07/2010, 12:14
Turro
 
Fecha de Ingreso: julio-2010
Mensajes: 1
Antigüedad: 13 años, 9 meses
Puntos: 0
Ayuda con eventos de boton as3

Que tal tengo un problema con unos botones creados dinamicamente mediante AS3.

Tengo dos clases una llamada manager que es la que crea los botones y otra clase llamada botones que es el mc y el texto que lleva cada boton.

mi problema comienza cuando le pongo los eventos a los botones, quiero que cuando den clik al boton de inicio ponga la seccion de inicio pero que blokee el boton para que el usuario no le de click de nuevo y me duplique el contenido. pero si da click en otro boton que se activen las funciones de nuevo del boton de inicio para que pueda acceder a dicha seccion. les dejo el codigo haber si me pueden ayudar.

esta esta en la clase manager y es la que crea los botones dinamicamente

public function crearBotones():void
{
this.botones = new Array("BIO", "WEDDING SESSION", "SWEET FIFTEEN", "CONTACTO")
this.contenedorBtns = new CasaSprite
this.addChild(contenedorBtns)
this.contenedorBtns.x = -130
this.contenedorBtns.y = (stage.stageHeight - 90)

for (var i:uint = 0; i < botonesTotales; i++) {
var temp:Botones = new Botones(i, this)
//temp.y=(20*i)+(stage.stageHeight-90)
//temp.x = -130
this.contenedorBtns.addChild(temp)
temp.texto_txt.text = botones[i]
Tweener.addTween(temp, { x:140, time:.6, transition:"easeOutExpo", delay:1 } )
this.botones.push(temp)
temp.y = (20 * i)
//trace(botones[i])

}

}

esta es la clase Botones que contiene el mc que es el boton

public class Botones extends CasaSprite
{
private var manager:Manager
private var orden:uint
public var boton_mc:MovieClip
public var texto_txt:TextField



public function Botones(orden:uint,manager:Manager)
{
this.manager = manager
this.orden=orden
this.init()
}

private function init():void
{
ColorShortcuts.init()
this.addChild(boton_mc)
this.boton_mc.addChild(texto_txt)
this.boton_mc.alpha = .5
this.aplicarAcciones()
}

private function aplicarAcciones() {

buttonMode = true
mouseChildren = false
useHandCursor = true
addEventListener(MouseEvent.ROLL_OVER, over, false, 0, true)
addEventListener(MouseEvent.ROLL_OUT,out,false,0,t rue)
}


private function out(e:MouseEvent):void
{
Tweener.addTween(boton_mc, { x:0, time:.6, transition:"easeOutExpo" } )
boton_mc.alpha = .5

}

private function over(e:MouseEvent):void
{
Tweener.addTween(boton_mc, { x:20, time:.6, transition:"easeOutExpo" } )
this.boton_mc.alpha=1

}



public function getOrder():uint {
return orden
}

}

}