Comunidad de diseño web y desarrollo en internet online

guardar color de un swf en cookies o el pc del usuario

Citar            
MensajeEscrito el 09 Oct 2008 10:13 pm
Buenas tardes para todos

Ando hace rato buscando la forma de guardar un color en las cookies :cry: .
Les explicare:

Tengo un diseño en flash, el diseño tiene una saprtes en color lo que quiero es darle al usuario la opcion de personalizar un poco la interfaz, cambiando las combinaciones de color, yo le daria unas opciones para los colores con un boton por ejemplo gama de verdes, azuels, rojos, amarillos, etc. asi que cuando el usuario seleccione una gama de color, la ultima que seleccione quede almacenada en el pc del usuario para que cuandoe ste vuelva a visitar el sitio vea el color que eligio.

Entiendo que esto tiene que ver algo con SharedObject, :shock: creanme he buscado pero no encuentro. :lol:

De antemano mil y mil graicas :love:

Por Cygnus

68 de clabLevel



Genero:Masculino  

msie7
Citar            
MensajeEscrito el 09 Oct 2008 10:15 pm

Por elchininet

Claber

3921 de clabLevel

17 tutoriales

Genero:Masculino  

Front-end developer at Booking.com

firefox
Citar            
MensajeEscrito el 09 Oct 2008 11:06 pm
elchininet gracias por tus recomendaciones.

lo que apsa e sque no se comod arle la variable para que tome el color y lo guarde, por ejemplo al seleccionar el el boton azul y quede azul el diseño lo guarde con este color en las cookies, y ya habia revisado estos tutos pues como dig ehe buscado mucho pero nada asi con las variables apra guardar el color.

creo que cada color tiene que estar dentro de un MC o algo asi.

Graica sor tu ayuda y algun consejo o recomendacion estare esperando con ansias.
GRACIAS!!!!!!!!!!

Por Cygnus

68 de clabLevel



Genero:Masculino  

msie7
Citar            
MensajeEscrito el 09 Oct 2008 11:45 pm
El color lo guardas como una variable más, postea el código que utilizas para cambiar de color.

Por elchininet

Claber

3921 de clabLevel

17 tutoriales

Genero:Masculino  

Front-end developer at Booking.com

firefox
Citar            
MensajeEscrito el 10 Oct 2008 07:50 pm
Hola

Pues yo lo hago de manera simple ya que no soy un experto en flash. Bueno la cosa es asi:

En mi pelicula tnego un MC con dos capas una para el boton (que despues seran botones con un color cada uno par aindicarle al usuario qu ecolor es) y otra que esta dividida en varios fotogramas y estos tienen un objeto con el color.

El codigo del boton es:

on (release) {
if( _currentframe < _totalframes )
nextFrame();
else
gotoAndStop(1);
}

El boton lo que hace es simplemente pasar de un fotograma al otro ya si muestra el color, pero no se como hacerlo por AS o por variables he visto que en foros lo ahcen asi:

btn_rojo.onRelease = function() {
banner._alpha = 50;
colores.setRGB(0xFF0000);
};
btn_verde.onRelease = function() {
banner._alpha = 50;
colores.setRGB(0x00CC00);
};

Pero la verdad ni idea.

Si pudieran ayudarme s elos aradeceria muchisisisimo. bye

Por Cygnus

68 de clabLevel



Genero:Masculino  

msie7
Citar            
MensajeEscrito el 10 Oct 2008 09:05 pm
Ahora he logrado hacer los botones para el cambio de color

Ya el objeto es un MC con nombre de instancia "color_mc" y los botones tienen la accion para cambiar el color asi:
on (release) {
var micolor=new Color(color_mc)
micolor.setRGB(0xFFCC33)
}

Ahor ami gran duda es como sigo? T_T

Por Cygnus

68 de clabLevel



Genero:Masculino  

msie7
Citar            
MensajeEscrito el 10 Oct 2008 09:37 pm
Es algo sencillo, utilizas estas dos funciones similares a las del tutorial:

Código ActionScript :

//---Salvar un dato
function saveData(nombre:String, dato:String):Void{
   
   var mySo:SharedObject;
   mySo = SharedObject.getLocal("datos");
   mySo.data[nombre] = dato;

   mySo.flush()
   
}

//---Leer un dato
function loadData(nombre:String):String{
   
   var mySo:SharedObject;
   mySo = SharedObject.getLocal("datos");
   return mySo.data[nombre];
   
}


Ya después puedes guardar el color de la siguiente manera:

Código ActionScript :

on (release) {
   var col:Number = 0xFFCC33;
   var micolor = new Color(color_mc);
   micolor.setRGB(col);

   _root.saveData("micolor", String(col))
}


Y cuando quieras leer el objeto SharedObject utilizas lo siguiente:

Código ActionScript :

var micolor:Number = Number(loadData("micolor"));

Por elchininet

Claber

3921 de clabLevel

17 tutoriales

Genero:Masculino  

Front-end developer at Booking.com

firefox
Citar            
MensajeEscrito el 14 Oct 2008 02:48 pm
Hola gracias por tu valiosa ayuda

Con este codigo me surge una duda, el codigo para Salvar un dato y Leer un dato se coloca en la linea de tiempo principal?
y el eltumio que me dices que es para leer el objeto SharedObject donde se pone, dentro del on (release) o se coloca tambien en la linea de tiempo principal?

Graicas nuevamente

Por Cygnus

68 de clabLevel



Genero:Masculino  

msie7
Citar            
MensajeEscrito el 14 Oct 2008 07:17 pm
Bueno las funciones sí ponlas en el primer frame de tu película porque son globales, depués puedes acceder a ellas desde un botón (como el ejemplo de salvar los datos) o en el momento que lo desees.

El último que te doy lee el color guardado y lo guarda en la variable "micolor", aplícalo donde te haga falta, esa parte depende de como vayas a hacerlo no depende de mi explicación.

Por elchininet

Claber

3921 de clabLevel

17 tutoriales

Genero:Masculino  

Front-end developer at Booking.com

firefox
Citar            
MensajeEscrito el 14 Oct 2008 07:39 pm
ummm ya lo he intentado y no me da, es que no se si esta guardadno los datos y no se como decirle al MC que vuelva a leer el color del RGB

T_T disculpen pero no soy tan bueno para el AS, y encima hoy tube unos incombenientes personales que no me dejan muy calro para pesnar
Gracias

Por Cygnus

68 de clabLevel



Genero:Masculino  

msie7
Citar            
MensajeEscrito el 14 Oct 2008 08:25 pm
Dices que no sabes como decirle al MC que vuelva a leer el color, pero en el código que posteaste le dices al MC que adquiera un color, es contradictorio:

Código ActionScript :

on (release) {
    var micolor=new Color(color_mc)
    micolor.setRGB(0xFFCC33)
}


En el anterior caso lo hiciste con un número hexadecimal (0xFFCC33), para hacerlo con el color que leas, primero lee el color que guardaste anteriormente y después aplícalo de la misma manera que habías hecho

Si quieres hacer la lectura del color con un botón pones los códigos dentro del evento de un botón, es por eso que te decía que dependía de ti donde deberías situar el código.
En caso de que lo pruebes y no te funcione postea el código que has tratado de aplicar y que te da error, así veo la forma en que lo quieres aplicar y de paso noto donde está el problema.

Por elchininet

Claber

3921 de clabLevel

17 tutoriales

Genero:Masculino  

Front-end developer at Booking.com

firefox
Citar            
MensajeEscrito el 14 Oct 2008 08:35 pm
perdon si estoy canson pero noe smi intension.

SI en el codigo darle el color es facil, tengo 6 botones que al darles click le dan diferente color al MC con nombre de instancia color_mc, pero mis dudas grandes son:
1.como hago para que al seleccionar un color con el boton, este quede guardado automaticamente en las cookies, sin necesidad que el usuario le de un boton guardar.
2.lo otro es como al ingresar nuevamente a la pagina el swf cargue automaticamente el color que el usuario selecciono de ultimo.
3.y con el codigo me confundi pues no se como hacer esto.

Mil gracias pro tu ayuda y tu tiempo.

Por Cygnus

68 de clabLevel



Genero:Masculino  

msie7
Citar            
MensajeEscrito el 14 Oct 2008 08:52 pm
1.como hago para que al seleccionar un color con el boton, este quede guardado automaticamente en las cookies, sin necesidad que el usuario le de un boton guardar.


En el código que postee a la misma vez que le das color al movieClip se guarda el mismo automáticamente, no necesitas un botón para guardar:

Código ActionScript :

on (release) { 
   var col:Number = 0xFFCC33; 
   var micolor = new Color(color_mc); 
   micolor.setRGB(col); 
 
   _root.saveData("micolor", String(col)) 
} 


2.lo otro es como al ingresar nuevamente a la pagina el swf cargue automaticamente el color que el usuario selecciono de ultimo.


Cuando quieres que automáticamente se ejecute un código se pone el código en el frame donde quieres que se realice la acción, como ya sabes hacer el código para cambiar de color (porque ya lo tienes dentro de un botón) si lo sacas del botón y lo pones directo en la escena te debe de funcionar:

Código ActionScript :

var col:Number = Number(loadData("micolor")); 
var micolor = new Color(color_mc); 
micolor.setRGB(col);


Consejo: Si no logras comprender esto, en realidad lo primero que debes hacer es leer un poco más en el foro de AS, como trabajar con variables en flash, crear código en el timeline, acceder a funciones, etc, antes de resolver un problema como este que requiere de todos estos conocimientos básicos.

Por elchininet

Claber

3921 de clabLevel

17 tutoriales

Genero:Masculino  

Front-end developer at Booking.com

firefox
Citar            
MensajeEscrito el 14 Oct 2008 09:03 pm
UUUUUFFFFFFFFF!!!!!!!!!!!!!!!!!!!!!!!!!!!!1

MIL Y MIL GRACIAS POR TU AYUDA elchininet

Al fin lo he conseguido, lo unico que no entendia era el ultimo codigo que pusiste en el post.

deje todo como lo tenia y solo psue ese codigo al incio de guardar las variable sy leerlas para que cuando entre d euna carge esas.
gracias ^_^ por fin algo que me alegra el dia

Por Cygnus

68 de clabLevel



Genero:Masculino  

msie7
Citar            
MensajeEscrito el 14 Oct 2008 09:14 pm
Me surge la utliam duda, el codigo funciona de lujo ^_^ pero borre las cookies d emi equipo y todo el historial mejor dicho todo y me sigue cargando el color?
como hacer para qu ecuando borre las cookies vuelva al color original?

Por Cygnus

68 de clabLevel



Genero:Masculino  

msie7
Citar            
MensajeEscrito el 14 Oct 2008 09:26 pm
Lo que guarda flash no son cockies son SharedObjects se le dice a veces cookies para que se entienda que son como un homólogo del mismo método desde un navegador, pero en realidad si borras las cookies del navegador los SharedObjects no se borrarán. Para hacer lo que quieres consulta el método "clear" de la clase SharedObjects.

Por elchininet

Claber

3921 de clabLevel

17 tutoriales

Genero:Masculino  

Front-end developer at Booking.com

firefox
Citar            
MensajeEscrito el 14 Oct 2008 09:40 pm
ok Gracias nuevamente igual quede super contengo con tu apoyo,

mil gracais

Por Cygnus

68 de clabLevel



Genero:Masculino  

msie7

 

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