Tengo una presentación pero necesito que una serie de frames se me repitan hasta que le de a una tecla, lo que pasa es que no se que acción colocar para esto.
Respuesta de oxigenow
1
1
oxigenow, Dibujo Publicitario (Escuela de Arte de Murcia)
Disculpa la demora pero, con el cambio de hora de tu país y el mío y el trabajo me ha sido imposible responderte antes... Vamos con el tema (que seguro estarás esperando con impaciencia ;D ) Lo que quieres hacer, podríamos esquematizarlo de la siguiente manera (corrígeme si no es así): Creamos un objeto tipo movie, que contiene la secuencia cíclica, y lo insertamos en la línea de tiempos en un fotograma en concreto al que asignamos una acción Stop(). Claro, con esto pararemos la cabecera de reproducción en este fotograma, con lo que veremos las secuencia que hemos insertado haciendo looping (recuerda en esa sentencia poner al final una acción para volver al primer fotograma). Ahora supongo que quieres "saltar" a otro fotograma (si lo que quieres es parar la secuencia, puedes saltar a otro fotograma que contenga el gráfico sin movimiento). Como vistes, es sencillo hacelo mediante un botón... en el caso de hacer con una tecla es también muy sencillo pero, hay un pequeño "truco". Le vamos a signar un comportamiento de botón (que ya conoces) pero resulta que flash sólo permite asignar esos comportamientos, efectivamente a botones... Para ello, crea un botón (lo más sencillo posible y sin varios estados, pues no se va a ver) en la librería... ya que lo vamos a arrastrar a escena en varios fotogramas (recuerda que esto no aumenta el "peso" de la película final). Ahora arrastra el botón hasta la escena, en el fotograma donde se para la movie y se muestra la animación loop (te recomiendo que crees una capa específica para organizar los elementos, donde incluyas los botones). Ahora selecciona el botón en la escena y mira las propiedades del mismo en la paleta propiedades; donde pone "COLOR" despliega y selecciona "ALPHA" y le das un valor "0%" (totalmente transparente) Esto es para que no se vea en la escena. Otra posibilidad es situarlo fuera del marco de la película (no se verá pero estará ahí, te recomiendo este último proceso). Ahora vamos a darle el script que nos permitirá saltar a otro frame. Teniendo seleccionado el botón, abrimos la paleta de acciones (scripts) con F9. Introduce este script: on (keyPress "<Enter>") { gotoAndPlay(5); } Si te sitúas en una línea, en la parte superior te permitirá modificar los parámetros. Así, si te sitúas en la línea "on (key..." verás una etiqueta que te pide la Tecla a pulsar... no tienes que introducir la tecla que es... sólo, estando el campo activo, pulsa en el teclado la tecla correspondiente, y automáticamente tomará el valor de dicha tecla... Como ves es muy sencillo, solo que tendrás que arrastrar un botón a cada frame de pausa, y añadirle el script modificando el número de fotograma al que va a saltar la cabecera de reproducción. Esto te valdrá para hacer películas que se usen con ratón y teclado a la misma vez, lo cual añade valor en cuanto a accesibilidad. Yo lo he probado y funciona sin problemas. No obstante, ya sabes... si tienes algún problema, ya sabes dónde encontrarme. Suerte y un abrazo desde España.
Antes de responderte, aclararte un matiz que, igual ya lo has visto pero, por si acaso te lo recuerdo: En la paleta de propiedades, cuando no tenemos seleccionado ningún objeto (te puedes asegurar pulsando en un área vacía de la pantalla), se nos muestra información de la película... color de fondo, pero destaca la resolución de salida (en píxeles). Esto determinará el tamaño de nuestra movie en pantalla. Ahora bien, si lo que quieres es lanzar la movie a pantalla completa, independientemente del tamaño original de la misma, el procedimiento es muy sencillo: En el primer fotograma de la película (da igual la capa pero, preferiblemente en aquella donde estén alojados los scripts) insertamos un fotograma clave (si no hubiese ninguno, claro) y entonces le insertamos una acción (recuerda F9 para abrir la paleta acciones)... En la lista de la izquierda (los comandos) pulsamos sobre BROWSER/NETWORK y, dentro de este, hacemos doble click en FSCOMMAND. En los campos de la derecha nos pedirá comando y parámetros... en comando escribimos "fullscreen" (sin las comillas que son solo para diferenciar) y, en parámetro tecleamos "true" (ídem lo de las comillas). También se puede seleccionar desde el desplegable que hay debajo. Con esto hemos creado un comando Javascript que lo puede interpretar el sistema y a través de los navegadores, que lanzará nuestra movie a toda pantalla... Un consejo, evita el uso de fotografías ya que estas perderán calidad al ser ampliadas automáticamente... los textos y demás objetos vectoriales no sufrirán ese problema... Ahora, te toca disfrutar de tus experiencias multimedia "a toda pantalla". Un abrazo desde España y ya sabes... si necesitas algo...
- Anónimoahora mismo
3 respuestas más de otros expertos
Respuesta de jaccsoft
1
1
jaccsoft, CV- Preparación profesional Actualizado en Enero del 2003
Para hacer esto tienes que usar un detector de teclas, para esto te recomiendo que uses lo siguiente: objetoTecla = new Object(); objetoTecla.onKeyDown = function() { getURL("http://www.yahoo.com"); }; Key.addListener(objetoTecla); Si pones el código anterior en el primer frame de película flash, puede estar ocurriendo una animación que cuando le des a una tecla pues se cargará la web del yahoo por ejemplo.
Creo que estarespuesta era para otra persona, te lamando para que le conteste a esa persona que debe estar esperando tu respuesta.. de todas formas gracias por colaborar con personas como yo...
No me equivoco amigo mio, la respuesta iba dirigida a ti, creo que deberías leer tu pregunta inicial y luego mi respuesta nuevamente, si no entiendes algo dímelo.
Nada complicado. supongamos quieres repetir del frame 0 al 10. Haces un nuevo layer del 0 al 10, aquí habrá un botón con la siguiente acción on (keyPress "<Space>") { GotoAndPlay(11) } Esto hará que en cualquier frame entre 0 y 10 el botón al apretar el espacio hira el frame11. Tambien deberas poner en el frame 10 una accion que retorne la pelicula al frame 0 (o al primero de los frame a hacer loop). un gotoAndPlay().
Para que una serie de frames se repita basta con colocar una acción en el último fotograma de esa animación. El actionscript sería el siguiente: gotoAndPlay(1); *suponiendo que 1 sea el primer fotograma. Luego, basta con crear un botón o un clip en donde se especifique qué acción tomar cuando se pulse alguna tecla. Suerte!. Para más información escríbame a [email protected]