Comunidad de diseño web y desarrollo en internet online

Duda al pinchar...

Citar            
MensajeEscrito el 01 Ene 2007 12:52 pm
Buenas, tengo 1 duda, como puedo hacer para que al pinchar 1 botón se ejecute una animación y cuando termine la animacion se cargue un .swf dentro de un contenedor? Saludos. :)

Por AdRiAnCeTe

45 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 01 Ene 2007 07:24 pm
Bueno Para resolver tu pregunta, la dividir en dos partes (Divide y venceras).

Primera parte: Como puedo hacer para que al pinchar 1 botón se ejecute una animación

Bueno, para esto dare de antemanos que posees un Botón el cual lo hubicare en mi caso hipotetico en el root, ha este le podre boton_1_btn como nombre de instancia, y que la animación esta dentro de un Movie Clip el cual llamaré animacion_mc y esta también se encuentra en el root.

(Parrafo opcional) Si no sabes como colocarle el nombre de instancia (esta parte la escribo ya que no se que tanto sabes de flash), primero presiona CTRL+F3. Este comando sacara el panel propiedades. Segundo selecciona por ejemplo el boton y si obsrevas en el panel de propiedades, hay puedes colocar el nombre de instancia, haras lo mismo con el Movie Clip. El nombre que le debes poner puede ser los que yo ya mencione, Nota: es bueno que los nombres de instancia de los botones sea _btn y los de los Movie Clip _mc

Supondré que el Movie Clip tiene una acción de stop en el primer y último fotograma, por lo cual no se reproduce su lineal del tiempo al principio, pero a partir del segundo fotograma hasta el penúltimo posee un play. entoces seleccionaremos el botón y pondremos el siguiente código

Código :

on (release) {
   _root.animacion_mc.gotoAndPlay(2);
}

Esta es una forma de hacerlo, pueden a ver muchas más sencillas (pero para ejercicio didáctivo esta te ayudará a plantearte más preguntas lo cual equivale a más aprendizaje, si investigas).

//----------------------------

Segunda parte: Como puedo hacer para que al terminar una animación se cargue un .swf dentro de un contenedor

Está pregunta es un poco más compleja (Lo cual quiere decir que no eres tan novato en el tema).

Necesitaremos un swf diferente al cual estamos trabajando, por lo cual deberemos diferenciar por medio de nombres el swf donde estamos realizando todo y el que deseamos cargar. En el que estamos trabajando lo podemos llamar este_acciones.swf y el que deseamos cargar en el contenedor se puede llamar deseamos_caragar.swf

A ver sigamos con nuestra linea en el discurso. (Útilice una frase más compuesta para que sonara más bonito) Cuando la animacion_mc llege al último fotograma (en el cual puede existir una accion stop(); ) agregaremos un poco más de código por lo cual el último fotograma de la animación sería

Código :

stop();
var contenedor:MovieClip = this.createEmptyMovieClip("contenedor_mc", this.getNextHighestDepth());
loadMovie("deseamos_cargar.swf", contenedor_mc);
setProperty("contenedor_mc", _x , 0);
setProperty("contenedor_mc", _y , 100);

Ahora biene la parte dificil, explicarlo,

Primera linea: stop(); para la película (este fue facil)

Segunda linea: var contenedor:MovieClip = this.createEmptyMovieClip("contenedor_mc", this.getNextHighestDepth());. Bueno aquí cree por medio de actionscript un Movie Clip el cual nos servira como contenedor y se llamara contenedor_mc con la ayuda de createEmptyMovieClip() el cual recibe dos parametros, el primero el nombre del movie clip, el segundo su nivel de profundida. Para asegurarse que este movie clip quedar delante de los demas objetos situados en el mismo nivel utilizo el método getNextHighestDepth()

Tercera linea: loadMovie("deseamos_cargar.swf", contenedor_mc);. aqui la función LoadMovie () que me sirve para cargar un swf (en este caso) dentro de el contenedor, esta función recibe dos parametros, primero un string con la ruta del archivo que deseamos cargar, segundo el nombre del contenedor.

Cuarta linea: setProperty("contenedor_mc", _x , 0);. Bueno esta linea y la quinta son opcionales, pero utilizo la función setProperty() para poder darle algunas propiedades a nuestro contenedor (en este caso posición en x e y) si observamos, el primer parametro es un string con el nombre del contenedor, el segundo el tipo de atributo (_x), tercero el valor del atributo.

Bueno ya escribi por hoy suficiente. Espero que quedes satisfecho con la respuesta

En retribución si puedes o conoces a alguien que me ayude con mi problema con mucho gusto lo recibiría

Por esutoraiki

Claber

548 de clabLevel

4 tutoriales

Genero:Masculino  

Aplicaciones para Web

opera
Citar            
MensajeEscrito el 01 Ene 2007 07:35 pm
Te mando al correo el archivo que hice para guiarme y no embarrarla

Por esutoraiki

Claber

548 de clabLevel

4 tutoriales

Genero:Masculino  

Aplicaciones para Web

opera
Citar            
MensajeEscrito el 01 Ene 2007 08:22 pm
No, no me ha entendido. Lo que yo quiero es que al pinchar en un botón se ejecute una animación que digamos dura 20fotogramas, y que cuando termine, se cargue el .swf.. algo así como.

boton1_btn.onPress=function(){
animacion_mc.gotoAndPlay(5); // digamos que empieza en el fotograma 5 hasta una acción llamada stop.
contenedor_mc.loadMovie("cargar.swf");
}


Pero así no funcionaría no? Es decir se ejecutaría la animación pero rapidamente se cargaría y no daria tiempo a verse no? Saludos.

Por AdRiAnCeTe

45 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 02 Ene 2007 03:22 am
AdRiAnCeTe

Hola, Creo que lo que deseas esta justo en el adjunto que te envie a tu correo (si no pusiste un correo falso en tu perfil).

Dime si ya lo revisaste y no era lo que necesitabas regalame más especificaciones y yo te intento ayudar. :?

Por esutoraiki

Claber

548 de clabLevel

4 tutoriales

Genero:Masculino  

Aplicaciones para Web

opera
Citar            
MensajeEscrito el 02 Ene 2007 07:19 am
Vale, sí. Ya está claro, gracias.

Por AdRiAnCeTe

45 de clabLevel



Genero:Masculino  

firefox

 

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