Foros del Web » Creando para Internet » Flash y Actionscript »

Cambiar propiedades de varios botones a la vez

Estas en el tema de Cambiar propiedades de varios botones a la vez en el foro de Flash y Actionscript en Foros del Web. Muy buenas.... tengo un problemilla .. a ver si alguien se le ocurre algo... Quiero cambiar las propiedades alpha de un boton... hasta ahi todo ...
  #1 (permalink)  
Antiguo 09/02/2009, 12:17
 
Fecha de Ingreso: marzo-2004
Mensajes: 16
Antigüedad: 20 años, 8 meses
Puntos: 0
Cambiar propiedades de varios botones a la vez

Muy buenas....

tengo un problemilla .. a ver si alguien se le ocurre algo...

Quiero cambiar las propiedades alpha de un boton... hasta ahi todo va bien es decir en el fotograma 1 coloco:

_root.botonera.bt1._alpha = 30;
_root..botonera.bt2._alpha = 100;
...
...
...

en el fotograma 2

_root.botonera.bt2._alpha = 30;
_root..botonera.bt1._alpha = 100;
...
...
...


y lo hace perfectamente pero el problema viene porque tengo 57 botones¡¡¡ y poner en cada uno de los 57 fotograma el codigo para que me baje el alfa de uno y me restaure el 100% de alfa del otro pues como que es un poco pesado...

Hay forma de dar una orden que sea poner alfa 100 a todos los botones menos al que quiera que tenga 30%? sin tener que ir diciendo a cada boton individualmente... y tendria que ser en AS2...

Espero haberme explicado...

Saludossssss
  #2 (permalink)  
Antiguo 09/02/2009, 13:11
Avatar de Lynxcraft  
Fecha de Ingreso: noviembre-2007
Ubicación: yecla murcia
Mensajes: 1.346
Antigüedad: 17 años
Puntos: 51
Respuesta: Cambiar propiedades de varios botones a la vez

lo mas sencillo que se me ocurre es que crees un lista de los botones y los coloques dentro de un array luego se puede hacer funciones como esta


Código PHP:
var ListaBotones:Array=new Array(bt1,bt2,bt3,bt4)

AnadeFuncionesBT()
function 
AnadeFuncionesBT(){
    for (var 
i:Number=0;i<ListaBotones.length;i++){
        
ListaBotones[i]._alpha=30
         FuntionPress
(ListaBotones[i],i)
    }
}
function 
FuntionPress(boton,id){
    
boton.onPress=function(){
    
AlphaBt(id)
    }
}
function 
AlphaBt(idBT){
    for (var 
i:Number=0;i<ListaBotones.length;i++){
         if (
idBT==i){ 
             
ListaBotones[i]._alpha=100
         
}else{
             
ListaBotones[i]._alpha=30 
         
}
    }

el resultado sería este

http://crea-flash.com/ejemplos/?dir=...0&color=000000

el ejemplo lleva solo cuatro botones

pero como he visto que los botones los tienes con un nombre de índice numérico puedes meterlo en el array de esta forma


Código PHP:
var ListaBotones:Array=new Array()

for (var 
i:Number=1;i<57;i++){ //qui fijate que la var i:Number=1 lleva 1 es porque no tienes botones con el nombre de instance 0 
        
var TempBotonesthis["bt"+i]
         
ListaBotones.push(TempBotones)
    }


AnadeFuncionesBT()
function 
AnadeFuncionesBT(){
    for (var 
i:Number=0;i<ListaBotones.length;i++){
        
ListaBotones[i]._alpha=30
         FuntionPress
(ListaBotones[i],i)
    }
}
function 
FuntionPress(boton,id){
    
boton.onPress=function(){
    
AlphaBt(id)
    }
}
function 
AlphaBt(idBT){
    for (var 
i:Number=0;i<ListaBotones.length;i++){
         if (
idBT==i){ 
             
ListaBotones[i]._alpha=100
         
}else{
             
ListaBotones[i]._alpha=30 
         
}
    }

suerte
__________________
Sobran las ideas cuando faltan ganas de trabajar en ellas
Lynxcraft
  #3 (permalink)  
Antiguo 09/02/2009, 15:32
 
Fecha de Ingreso: marzo-2004
Mensajes: 16
Antigüedad: 20 años, 8 meses
Puntos: 0
Respuesta: Cambiar propiedades de varios botones a la vez

Ufff creo que es la solucion... mañana lo pruebo.. pero creo que asi si que podre hacerlo...

Muchisimas graciasssss amigooo... me has salvado de una buena
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:40.