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

Problema con una función

Estas en el tema de Problema con una función en el foro de Flash y Actionscript en Foros del Web. Hola a todos! a ver si me pueden ayudar... tengo un frame con el siguiente código: btn.onRelease = function(){ foto.collage(); }; al apretar el botón ...
  #1 (permalink)  
Antiguo 10/05/2006, 18:00
 
Fecha de Ingreso: abril-2005
Mensajes: 182
Antigüedad: 12 años, 7 meses
Puntos: 1
Problema con una función

Hola a todos! a ver si me pueden ayudar... tengo un frame con el siguiente código:

btn.onRelease = function(){
foto.collage();
};

al apretar el botón llama a la funcion collage() que se encuentra en el primer frame del movie clip foto. Esto funciona perfecto, pero el problema que tengo es que necesito ir directamente a la función sin ningún evento del botón. Ya probe poniendo directamente así : foto.collage();
pero no pasa nada.

Alguna ayudita??
  #2 (permalink)  
Antiguo 10/05/2006, 18:40
Avatar de jahepi
Colaborador
 
Fecha de Ingreso: diciembre-2004
Ubicación: Querétaro
Mensajes: 1.124
Antigüedad: 13 años
Puntos: 43
Lo que puedes hacer es definir el método desde la raiz, por ejemplo para definir un método solo para la instacia foto:

Código:
foto.Collage = function():Void{
   trace("Hola!, soy el método collage de la instancia foto.");
}

foto.Collage();
Si vas a querer que ese método exista en todas la instancias creadas apartir de la clase MovieClip, puedes utilizar su propiedad estática prototype del tipo Object para añadir un método.

Código:
MovieClip.prototype.Collage = function():Void{
   trace("Hola!, soy el método collage de la instancia foto.");
}

foto.Collage();
Un saludo!
  #3 (permalink)  
Antiguo 10/05/2006, 21:05
 
Fecha de Ingreso: marzo-2006
Ubicación: Medellín
Mensajes: 93
Antigüedad: 11 años, 8 meses
Puntos: 0
Bueno, si no entendí mal lo que te sucede es lo siguiente: tienes un Mc con instancia foto que dentro tiene una funcion llamda collage(); resulta que no quieres llamar a esa función por medio del evento onReleasse sino que lo que quieres es que al llegar a un frame determinado de la linea de tiempo principal se haga el llamado a esta función sin ningun evento, si eso es lo que quieres lo puedes solucionar así:

En la línea de tiempo principal colocas en el frame desde donde quieres que se haga el llamado a la función esto:

Cita:
this.onEnterFrame = function(){
foto.collage();
delete this.onEnterFrame;
}
Espero que te sirva, si algo me cuentas, bye....
__________________
"Conocimiento adquirido y no compartido se perderá para siempre" :cool:
  #4 (permalink)  
Antiguo 11/05/2006, 07:30
 
Fecha de Ingreso: abril-2005
Mensajes: 182
Antigüedad: 12 años, 7 meses
Puntos: 1
Gracias a arleyb y jahepi!!! opte por probar lo que escribio arleyb ya que me resulto mas sencillo de entender y funciono perfecto!! Muchas gracias!
  #5 (permalink)  
Antiguo 11/05/2006, 19:18
 
Fecha de Ingreso: marzo-2006
Ubicación: Medellín
Mensajes: 93
Antigüedad: 11 años, 8 meses
Puntos: 0
De nada amigo, para eso estamos, me alegra que te sirvió la manera en como lo postee, suerte..
__________________
"Conocimiento adquirido y no compartido se perderá para siempre" :cool:
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 07:23.