Comunidad de diseño web y desarrollo en internet online

Cambiar color a un objeto

Citar            
MensajeEscrito el 18 Nov 2006 01:03 am
El archivo color.php envia seis colores en hexadecimal:
&color=0x00FCFF-0x00FCA8-0x88F410-0xD0FC00-0x00E4FF-0x00D4FF

Necesito que flash reciba esta cadena y la separe, una vez separados colores, bedo cambiar el color a miClip. En pantalla se debe hacer un cambio de color cada segundo, y una vez que termine de recorrer el array de 6 colores que vuelva a empezar.

Este es mi codigo, pero no me hace el cambio de color a menos que indique miColor.setRGB(colores_array[ 2 ]);

porfavor ayudenme! :crap:

Código :

var colores_array:Array = new Array();
var parte_array:Array = new Array();
var miColor = new Color(miClip);
var datos = new LoadVars();

frecuencia_de_muestreo=setInterval(cambia_color,1000);
function cambia_color() {
      colores_array = this.color.split('-');
   for (var i:Number = 0; i<colores_array.length; i++) {
          trace(colores_array[i]);
      miColor.setRGB(colores_array[i]);
   }
}
datos.onLoad = cambia_color;
datos.load("htp://localhost/mipagina/color.php");   

Por admado

11 de clabLevel



Genero:Femenino  

firefox
Citar            
MensajeEscrito el 18 Nov 2006 02:03 am
El trace funciona?? te manda undefined??

Por HernanRivas

Claber

3416 de clabLevel

26 tutoriales

 

Argentina

msie
Citar            
MensajeEscrito el 18 Nov 2006 02:14 am
Por que no pones en el onload q separe y cree el array de colores (si solamente tiene q leer del php los colores una vez) y luego cree el set interval q llamaria a la funcion para cambiar el color q consistiria en sumale uno a y y ponele el color almacenado en el array[i]... si los colores no son muy parecidos se vera un cambio brusco pero si es asi como lo quieres...

te pongo el codigo q a mi me funciona bien (salvo que yo no leia los datos del php sino de un array al q le daba los valores hexadecimales del color directamente)

Código :

var colores_array:Array = new Array();
var parte_array:Array = new Array();
var miColor = new Color(mi_clip);
var datos = new LoadVars();
var i:Number = 0;

//Aqui le doy al array los valores por no tener un php a mano xD pero weno una vez hagas 
//el split del onLoad es lo mismo, ¡¡pero eso si asegurate de q obtiene los datos del php!!
//colores_array[0] = "0x00FCFF"
//colores_array[1] = "0x00FCA8"
//colores_array[2] = "0x88F410"
//colores_array[3] = "0xD0FC00"
//colores_array[4] = "0x00E4FF"
//colores_array[5] = "0x00D4FF"

frecuencia_de_muestreo=setInterval(cambia_color,1000);
function cambia_color() {
   trace(colores_array[i]);
    miColor.setRGB(colores_array[i]);
   i=i+1;
   if (i>5) { i=0; };
}
datos.onLoad = function() {
   color=datos.color  //Me parece q esto te falta tb aunq no estoy seguro del todo pruebalo a ver q tal
   colores_array = this.color.split('-');
   frecuencia_de_muestreo=setInterval(cambia_color,1000);
}
datos.load("htp://localhost/mipagina/color.php");   



También se me ocurre q puedes hacer alguna especie de Tween para el color por codigo mediante una funcion que indique el color inicial y el color final i q esa funcion ejecute cada segundo (creo q esto solo se podria hacer en el flash 8 mediante la clase Tween, si no sabes como utilizarla busca algun tutorial por ahi sobre como utilizar la clase Tween yo e encontrado este q lo explica bastante bien http://www.tutoriales-flash.com/tutorial.asp?id_tuto=24)

Espero q te sierva de ayuda :zzz:

Por Xaxo

26 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 18 Nov 2006 05:22 am
:D Gracias.. mil gracias.. asi exactamente era lo que necesitaba hacer.. de verdad que muchas gracias .. hoy si voy a dormir trankila..

Por admado

11 de clabLevel



Genero:Femenino  

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.