Con este tip quiero mostrarles una manera de hacer un botón con dos animaciones distintas una al situarse el puntero del mouse sobre el botón y otra muy distinta al quitar el puntero.
Esto es muy distinto a hacer un botón con su rollOver y rollOut con una sola animación en retroceso
Primero abrimos un nuevo documento de flash, nos vamos al panel insertar y creamos un nuevo MovieClip le ponemos el nombre que queramos no interesa luego comenzamos creando la apariencia de nuestro botón (como en el ejemplo arriba cree algo sencillo) hacemos un cuadrado y le damos el color que queramos de la medida que mas prefieran yo le di 98x93 img1
A continuación creamos dos capas por encima de la que ya teníamos y le colocamos texto1 y texto2, en esas dos capas vamos a incluir los textos correspondientes, a uno de ellos le damos un tamaño mas grande que el otro para luego animarlos y situarlos en la posición como muestra la imagen para darle el efecto como ya lo vimos en el ejemplo arriba
Ahora vamos con la animación. Cogemos el fotograma en el que se encuentra el texto de mayor tamaño y le damos clic derecho, luego crear la interpolación de movimiento.
Nos situamos en el fotograma 10 de la linea de tiempo y le damos clic derecho e insertamos un fotograma clave y a las demás capas hacemos lo mismo pero ya no insertaremos un fotograma clave, solo ponemos fotogramas comunes o normales para poder visualizar todo y volvemos al fotograma clave que creamos y nos situamos en el
Seleccionamos el objeto y estando en el primer fotograma le aplicamos un alfa de 0% volvemos al fotograma 10 y lo arrastramos hacia abajo en la misma posición del texto pequeño, como verán hay uno enésima de otro pues para solucionar esto nos vamos a la linea de tiempo y seleccionamos la capa que contiene el texto pequeño y clicamos en el fotograma 10 e insertamos un fotograma clave y seleccionamos el texto y lo borramos.
Con esto lograremos que mientras la animación del texto grande se realice al llegar al fotograma 10 el texto pequeño desaparecerá y ya no quedara encima de el. Esto es el rollOver del botón
A continuación nos vamos a la interpolación de movimiento que creamos y nos situamos en el fotograma 20de la linea de tiempo e insertamos un fotograma clave y en las demás capas fotogramas normales ahora para terminar con el efecto del botón hacemos la animación que sera la de salida, la animación de rollOut.
Cogemos el fotograma 20 y seleccionamos el texto, el cual vamos a reducir de tamaño a las dimensiones del texto pequeño para esto tomamos las medidas y las ponemos en el texto grande y lo reduciremos, esto hace que la siguiente animación sea de reducción del texto como se ve en el ejemplo arriba.
Así nos ira quedando nuestra animación...
Con esto tenemos casi terminado nuestro botón lo que sigue es hacer que funcione la animación al contacto con el puntero del mouse para esto vamos a crear tres capas mas encima; nos situamos en una de ellas y crearemos un botón invisible que tenga las medidas de la animación.
¿Como logramos hacerlo? bien creamos un cuadrado y lo situamos encima de toda la animación y presionamos F8 y lo convertimos en botón, nos metemos dentro de su linea de tiempo y para lograr hacer el botón invisible solo arrastramos el primer fotograma hasta la zona activa y ya esta listo.
Regresamos al símbolo, cogemos la siguiente capa y crearemos un fotograma clave en el fotograma 10 lo tenemos seleccionado y le damos el nombre de etiqueta "k2", lo mismo vamos hacer en el primer fotograma de la misma capa y le llamaremos como nombre de etiqueta "k1".
En la figura ya le se ve que en la capa que quedaba cree un fotograma clave en el fotograma 10 esto es para poner un código AS el cual sera un Stop(); esto lo hacemos seleccionando el fotograma 10 y abrimos el panel de acciones y dentro colocamos el código. Lo mismo hacemos en el fotograma 1 de la misma capa. esto hace que la película no reproduzca y se quede en el primer fotograma.
Bueno, después de todo esto culminaremos con la programación del botón transparente para que se lleve acabo la animación rollOver y rollOut . bien comenzamos!! primero seleccionamos el botón trasparente y abrimos el panel de acciones dentro de el ingresamos el siguiente código ActionScrip:
Código :
on(rollOver){
this.gotoAndPlay("k1")
}
on(rollOut){
this.gotoAndPlay("k2")
}
on(release){
//aqui pones la orden que le vas a dar al boton
}
Con esto le decimos a flash, que cuando el puntero del mouse pose sobre el botón vaya y reproduzca la etiqueta "k1" esto seria el rollOver y si el puntero del mouse se desplaza fuera del botón que vaya y reproduzca la etiqueta "k2" esto seria el rollOut (lo de las etiquetas varia según el nombre que le asignes no es necesario que utilices "k1" y "k2" pueden ser los nombre que gustes colocar pero también tendrías que reemplazar el nombre en el código) con esto estamos culminando el botón.
Ahora solo nos queda probarlo pues bien lo tenemos en la biblioteca y lo arrastramos al escenario. porque hacemos esto? pues porque como habíamos creado un MovieClip no estaba en el escenario sino en la biblioteca y por esta razón tenemos que arrastrarlo al escenario principal ahora presionemos control + intro y listo...
Es un tip basico explicado de marema explicativa Por:Victor-Nael
muy bien tio me parese perfecto estube buscando esto dias Por:faraon-system_blog
Basico pero util. Gracias Por:Kinduff_blog
Tal como lo tienes planteado obtienes el mismo resultado con un clip de botón que tenga un clip con la animación de entrada en el estado "over" y otro clip con la animación de salida en el estado "out". saludos Por:Zguillez
No está de más.. muy ameno el tip. Por:bicho_O
Básico pero útil como menciona Kinduff, aunque yo lo uso más de estas formas, ya que uso otros elementos que tambien tengo que animar:
Código :
on (rollOver) {
with (mc1)
gotoAndPlay("tiempo1");
}
on (rollOut) {
with (mc1)
gotoAndPlay("tiempo2");
}
// "with" tambien puede contener la ruta (_root.mc0.mc1)
ó
si quieres mover otro elemento fuera de este mismo boton
Código :
on (rollOver) {
_root.otromc.gotoAndPlay("posicion1");
}
Hya muchas maneras de experimentar Por:Mr. Konfleis_blog
muchas gracias por sus comentarios, se que es un tip muy basico pero nunca esta demas. Se que se puede hacer de varias formas bueno yo probe con esta, como dice Mr. Konfleis_blog hay muchas maderas de experimentar esto es mas para los que recien se inicia en flash; creo que esta muy explicado y eso es lo que busco que quede claro todo otra ves muchas gracias por sus comentarios Por:zcar.net
hacen falta estos tips basicos pues aquellos que estan recien empezando se lian con estas cosas, a pesar de ello yo en lo personal no enseñaría a programar dentro del mismo mc pues asi el codigo queda enfermantemente desordenado (trabaje con un diseñador que tenia esa costumbre y aun tengo pesadillas) ademas no necesitas un boton y un mc solo con el mc es suficiente (ademas es mas fácil manipular un solo objeto que 2) digamos que al mc lo nombramos miBoton, creamos una nueva capa en el mismo fotograma a la cual llamamos as (o como se te de la gana) entonces:
Código :
miBoton.onRollOver(){
this.gotoAndPlay("k1")
}
miBoton.onRollOut(){
this.gotoAndPlay("k2")
}
miBoton.onRelease(){
//aqui pones la orden que le vas a dar al boton
}
asi el codigo que hagas sera mucho mas facil de leer y revisar
Lamentablemente, usar RollOver y RollOut puede ocasionar que no funcione bien. Por ejemplo, si alguien hace un ReleaseOutside no se reproduce la animación de salida y el botón queda "presionado".
Con un hitTest se soluciona (también se pueden poner todos los eventos posibles, pero no debería ser necesario) Por:HernanRivas
disculpen una corrección (si algún bhof lo edita hagame el favor de eliminar este mensaje) no le asigne el evento a una funcion
Código :
miBoton.onRollOver= function(){
this.gotoAndPlay("k1")
}
miBoton.onRollOut= function(){
this.gotoAndPlay("k2")
}
miBoton.onRelease= function(){
//aqui pones la orden que le vas a dar al boton
}
Lamentablemente, usar RollOver y RollOut puede ocasionar que no funcione bien. Por ejemplo, si alguien hace un ReleaseOutside no se reproduce la animación de salida y el botón queda "presionado".
Con un hitTest se soluciona (también se pueden poner todos los eventos posibles, pero no debería ser necesario)
cierto cierto, se soluciona tambien poniendo una igualdad:
Código :
btn.onRollOut = onReleaseOutside = function (){
//acciones
}
Creo que al menos todos entendemos el funcionamiento de estos Scripts
Solo queda a decisión de cada quién utilizar la forma que mas le plazca ó que esté acostumbrado.
Mientras funcione no hay problema....
(aunque si es importante tener un código limpio, efectivo y de fácil lectura) Por:DJ Konflëis
me gusto mucho aclarar un par de dudas en este efecto.Pero hay una duda pendiente, y es que no logro darle direccion al boton dentro de toda una pelicula, al probarla no se direcciona, pero si lo hace al darle un get url. ¿como puedo trabajar con este efecto solo cambiando de escenas y formando una web en un solo archivo? Por:G.Hantscheruk_blog
hola ta muy bueno pero el que no tiene el programa q Por:fvvz_blog
muy buen tip, pero como dice: "G.Hantscheruk_blog", no unciona al momento de vincular escenas. Por:Dabo_blog
solo una pregunta, ¿cómo puedo vincular escenas con este tipo de botón? ya que lo intente con la función " on(release) y no pasa nada. Por:isra_blog
como hago para detener y continuar con rollover y rollout? un clip de pelicula? Por:henry_blog
Código :
stop();
gotoAndPlay();
revisa los malditos ejemplos y tutoriales Por:Inyaka
Como decía aquí, por alguna extraña razon, desde la versión 8 (no recuerdo si con la 7 también) Flash ignora las escenas a la hora de compilar el swf (no recuerdo bien, pero creo que el tema de las escenas quedó sólo para las presentaciones de diapositivas) uniendo todas las escenas en una sola línea de tiempo y haciendo que gotoAndPlay/Stop("Escena", fotograma) no funcione. La forma más sencilla de solucionarlo es colocándole un nombre al fotograma en cuestión y utilizar gotoAndPlay/Stop("nombre_del_fotograma"); Por:The Fricky!
q codigo ocupo si quiero que al presionar salte a otra escena Por:buuren_blog
¿acaso paso de moda leer antes de postear? ¿los dos últimos mensajes no te dicen nada? Por:Inyaka
Hola con tod@s, espero alguien me pueda ayudar aca, quiero saber como puedo detener el movimiento de una imagen de izquierda a derecha y en ese momento me funcione el rollover y rollout... Gracias Por:Kryztopher_blog
Gracias por la aportación, el efecto es muy guapo Por:fercopy
oye carnal como puedo hacer un intro me puedrias explicar por fa Por:Mario_blog
Buenas, espeemos que este foro funcione...
segui prudentemente los pasos del boton con roll.....out...
ahora bien, cuando le asigno la accion al boton de ir a "X" lugar no lo hace
y si intento a todo el boton hacerlo boton nuevamente (bien villero)
aun asi tampoco lo hace...
los nombres de las instancias estan perfectamente colocados, cree un boton aparte para ver si funcionaba y lo hace..pero este boton que yo quiero usar que es el animado con el roll....out... no quiere funcionar,
algun consejo señores?
me encantaria poder aprender mas , pero soy animador en after effects, me esta poniendo de la nuca esta mierda del flash!
muchas gracias!!! Por:federico_blog
Disculpa ahora escribo mi comentario en minuscula para que se entienda mejor. "Logre hacer todos menos asignarle la orden, quiero que el botón me envié a un frem especifico del stage, pero al asignárselo pareciera que le asigna a unos de los frems dentro del movie clip, ¿que puedo hacer?" Por:alexdrummer_blog
gracias me ha servido en los mios y lo he utilizado asi:
on (rollOver) { this.gotoAndStop("over"); _root.textos_mc.gotoAndPlay("prod"); }
on (rollOut, releaseOutside){; this.gotoAndStop("in"); _root.textos_mc.gotoAndStop(1); }
trumoc Por:trumoc_blog
Hola, a ver si alguien me puede ayuar, he creado un menu con botones animados, pero cuando paso el boton demasiado rápido, el boton se me queda en la 2ª posición y ya no cambia.
A ver si alguien me dice que estoy haciendo mal. Gracias Por:peri2k
los felicito es muy buen documento y esta bien explicado. Gracias!!! Por:lesly-blog
Tenes una redaccion tan asquerosa q no se entiende nada. Muy malo lo tuyo eh.
Me voy a otro sitio Por:Diego-blog
mi duda es la siguiente el boton esta dentro de un movie clip por lo tanto si le digo goto and play (34) por ejemplo vaa ir a el fotograma 34 de esa linea de tiempo, pero si yo quiero que vaya al fotgrama 34 de la linea de tiempo principal, donde esta el movie clip que contiene al boton como lo hago ?. Por:rodrigo -blog
hola y gracias por el tutorial muy bien explicado pero tengo un inconveniente y es el siguiente: quiero usar el movieclip para llevarme a otra escena de la presentacion pero cuando le doy click no me lleva a la escena deseada. No se si el AS de gotoandplay esta mal puesto, debo dejarlo en la capa del boton invisible o donde? Por:hyotsuki
yo quisiera saber como se hace un una linea horizontal de botones y todas se muevan de derecha a izaquierda o viceversa, en donde ese conjunto solo se detenga cuando el mouse este sobre algun boton y pase a otra escena
gracias!!! Por:Luigi-blog
cual es el codigo para detener un movie clip con un boton Por:danilo-blog
pésima redacción pero exelente tutorial Por:Miguel-blog
no logro que boton vincule adecuadamente el onRollOver y onRollOut no deja que funcione sime puden resolver la duda gracias Por:drey-blog
por favor respondan, me pasa lo mismo qe al resto, no logro poder vincular ese movie clip rollover i rollout a otro fotograma de la pagina anterior. por favor ayudaa a todos les pasa lo mismoo
muchas gracias
i aguante cristalab Por:rodrigo-blog
TENGO LA SOLUCION
despues de probar i probar encontre la solucion.
lo qe hai qe hacer es al clip qe tiene la accion de rollover i rollout agregarle la accion:
on (release) {
_root.gotoAndPlay(3);
}
donde obviamente (3) es el fotograma al qe qeremos llegar de la pagina anterior digamos.
espero qe les sirva asi como me sirvio a mi
un abrazoo gentee Por:rodrigoo-blog
Felicitaciones por el tip, me sacaste de un problema. Por:delta_hel
Lo probe tal cual indicaba el tutorial pero al mover el mouse dentro y fuera del boton con rápidez, se aloca el boton y funciona al reves..osea se activa cuando el mouse esta fuera del boton..
Soy Nuevo en esto, espero alguien me pueda ayudar ya que veo que el tutorial es antiguo.
Gracias
Ghoyho Por:Ghoyho-blog
DD Por:SDSD-blog
Muy buena aplicacion tanto por ti (zcar.net) como por los demas usuarios de complementaron el post
Por:Hottie Girl-blog
Como que todavia no me queda muy claro
[spoiler] Con este tip quiero mostrarles una manera de hacer un botón con dos animaciones distintas una al situarse el puntero del mouse sobre el botón y otra muy distinta al quitar el puntero.
Esto es muy distinto a hacer un botón con su rollOver y rollOut con una sola animación en retroceso
Primero abrimos un nuevo documento de flash, nos vamos al panel insertar y creamos un nuevo MovieClip le ponemos el nombre que queramos no interesa luego comenzamos creando la apariencia de nuestro botón (como en el ejemplo arriba cree algo sencillo) hacemos un cuadrado y le damos el color que queramos de la medida que mas prefieran yo le di 98x93 img1
A continuación creamos dos capas por encima de la que ya teníamos y le colocamos texto1 y texto2, en esas dos capas vamos a incluir los textos correspondientes, a uno de ellos le damos un tamaño mas grande que el otro para luego animarlos y situarlos en la posición como muestra la imagen para darle el efecto como ya lo vimos en el ejemplo arriba
Ahora vamos con la animación. Cogemos el fotograma en el que se encuentra el texto de mayor tamaño y le damos clic derecho, luego crear la interpolación de movimiento.
Nos situamos en el fotograma 10 de la linea de tiempo y le damos clic derecho e insertamos un fotograma clave y a las demás capas hacemos lo mismo pero ya no insertaremos un fotograma clave, solo ponemos fotogramas comunes o normales para poder visualizar todo y volvemos al fotograma clave que creamos y nos situamos en el
Seleccionamos el objeto y estando en el primer fotograma le aplicamos un alfa de 0% volvemos al fotograma 10 y lo arrastramos hacia abajo en la misma posición del texto pequeño, como verán hay uno enésima de otro pues para solucionar esto nos vamos a la linea de tiempo y seleccionamos la capa que contiene el texto pequeño y clicamos en el fotograma 10 e insertamos un fotograma clave y seleccionamos el texto y lo borramos.
Con esto lograremos que mientras la animación del texto grande se realice al llegar al fotograma 10 el texto pequeño desaparecerá y ya no quedara encima de el. Esto es el rollOver del botón
A continuación nos vamos a la interpolación de movimiento que creamos y nos situamos en el fotograma 20de la linea de tiempo e insertamos un fotograma clave y en las demás capas fotogramas normales ahora para terminar con el efecto del botón hacemos la animación que sera la de salida, la animación de rollOut.
Cogemos el fotograma 20 y seleccionamos el texto, el cual vamos a reducir de tamaño a las dimensiones del texto pequeño para esto tomamos las medidas y las ponemos en el texto grande y lo reduciremos, esto hace que la siguiente animación sea de reducción del texto como se ve en el ejemplo arriba.
Así nos ira quedando nuestra animación...
Con esto tenemos casi terminado nuestro botón lo que sigue es hacer que funcione la animación al contacto con el puntero del mouse para esto vamos a crear tres capas mas encima; nos situamos en una de ellas y crearemos un botón invisible que tenga las medidas de la animación.
¿Como logramos hacerlo? bien creamos un cuadrado y lo situamos encima de toda la animación y presionamos F8 y lo convertimos en botón, nos metemos dentro de su linea de tiempo y para lograr hacer el botón invisible solo arrastramos el primer fotograma hasta la zona activa y ya esta listo.
Regresamos al símbolo, cogemos la siguiente capa y crearemos un fotograma clave en el fotograma 10 lo tenemos seleccionado y le damos el nombre de etiqueta "k2", lo mismo vamos hacer en el primer fotograma de la misma capa y le llamaremos como nombre de etiqueta "k1".
En la figura ya le se ve que en la capa que quedaba cree un fotograma clave en el fotograma 10 esto es para poner un código AS el cual sera un Stop(); esto lo hacemos seleccionando el fotograma 10 y abrimos el panel de acciones y dentro colocamos el código. Lo mismo hacemos en el fotograma 1 de la misma capa. esto hace que la película no reproduzca y se quede en el primer fotograma.
Bueno, después de todo esto culminaremos con la programación del botón transparente para que se lleve acabo la animación rollOver y rollOut . bien comenzamos!! primero seleccionamos el botón trasparente y abrimos el panel de acciones dentro de el ingresamos el siguiente código ActionScrip:
Código :
on(rollOver){
this.gotoAndPlay("k1")
}
on(rollOut){
this.gotoAndPlay("k2")
}
on(release){
//aqui pones la orden que le vas a dar al boton
}
Con esto le decimos a flash, que cuando el puntero del mouse pose sobre el botón vaya y reproduzca la etiqueta "k1" esto seria el rollOver y si el puntero del mouse se desplaza fuera del botón que vaya y reproduzca la etiqueta "k2" esto seria el rollOut (lo de las etiquetas varia según el nombre que le asignes no es necesario que utilices "k1" y "k2" pueden ser los nombre que gustes colocar pero también tendrías que reemplazar el nombre en el código) con esto estamos culminando el botón.
Ahora solo nos queda probarlo pues bien lo tenemos en la biblioteca y lo arrastramos al escenario. porque hacemos esto? pues porque como habíamos creado un MovieClip no estaba en el escenario sino en la biblioteca y por esta razón tenemos que arrastrarlo al escenario principal ahora presionemos control + intro y listo...[/spoiler]
Soy un poco lento para aprender =( Por:xD-blog
Bueno, todo funciona sin problemas, pero la cosa esta en que si quito el raton antes de que haya llegado a ll fotograma 10, la animacion se estropea y se queda bloqueado en este ultimo fotograma, y cuando vuelvo a poner el raton por encima, se va a a lo que es fotogama 1, pero nada de animacion, ¡ya no funciona!.
¿que hago mal? ¿que codigo tengo que poner para que pueda pasar el raton y quitarlo sin que la animacion se quede bloqueada?
Creo que la cosa va por el onrelease o el hitest que alguien mencionaba unos cuantos posts mas atras, pero debido a mi falta de conocimiento de flash, no puedo solucionarlo por mi mismo
Muchas gracias de antemano.
Aqui pongo un link para que veais el boton y que es lo que pasa. Si supiese como, la ponia directamente aqui
martprint.fr/flahs.htm
Gracias de nuevo Por:peleki-blog
Y por supuesto, felicidades por el tutorial, me ha sido de una grandisima ayuda. Por:peleki-blog
Tengo un problema, realice unos botones con el efecto "Rollover - Rollout" todo funciona bien. La falla viene cuando hago click y el boton no me lleva al rotulo de fotograma "home" que le he indicado. Este rotulo de fotograma se encuentra en la escena "main_page" fuera del MovieClip del boton donde se efectua el rollover. El codigo es este, ayudenme por favor
on (rollOver) {
this.gotoAndPlay("over");
}
on (rollOut) {
this.gotoAndPlay("out");
}
on (press) {
gotoAndPlay("main_page","home");
} Por:Javier-blog
Bueno encontre la respuesta... la solucion es colocar la accion de la siguiente forma:
on (rollOver) {
this.gotoAndPlay("over");
}
on (rollOut) {
this.gotoAndPlay("out");
}
on (press) {
_root.gotoAndPlay("home");
} Por:javier-blog
Buen tutorial... me parece que entre todos se hizo posible.... Gracias a "rodrigoo-blog", que hizo un aporte interesante explicando cómo volver a una escena anterior...
Muchas Gracias.- Por:EW-blog
Buen efecto, pero si quisier hacer un menu con el como le hago para dejarlo en presionado para que destaque de los demas botones, y que cuando presione otro este vuelva al estado original.... Por:zampakutoh
nu me zalio
D= Por:~Riuzakii~-blog
muy bien tutorial, pero tengo problemas para darle dirección al boton, ocupo goto and play y lo mando a otra escena en el mismo documento pero no hace nada. Si saben halgo me ayudan porfa. Por:rick-311-blog
buen tuto simple y sobre todo claro funciono todo al 100 a la primera Por:garhernan-blog
Creo que me acabas de salvar la vida, aunque digan q es basico, llevo años usando el flash y recien ahora me meto con AS, me cuesta horrores, asique GRACIAS!!! Por:hola-blog
Los tutoriales de esta web deberían ser videos y no un montón de texto e imágenes que es más fácil perderse. Lo digo con el ánimo de mejorar esta web y no por ser perezoso porque igual aprendí flash a punta de tutoriales como este y similares.
Gracias por toda la gente que se mata subiendo tips, tutoriales y respondiendo en los foros, son de muchísima ayuda. Por:Edenshaw-blog
Hola lo estoy aciendo esto con CS4 y no me va es para otras versiones? Por:sikeone-blog