Publicidad:
La Coctelera

nicolásespinoza | diseñográfico

diseñador gráfico PUCV [pontificia universidad católica de valparaíso]

14 Octubre 2005

Cómo hacer un reloj en FLASH?

El objeto DATE introducido en Flash 5 hace simple el hecho de tener un reloz en una película flash. Los siguiente pasos explican como realizar un simple reloj que muestre la hora AM/PM en formato Hora:Minutos:Segundos.

Y nos vamos...

1. Crea un simbolo MOVIE CLIP [insertar > nuevo simbolo]

2. Usando la herramienta de texto crea un campo de texto en este nuevo simbolo. Este texto mostrará la hora.

3. Selecciona el campo de texto con la herramiente "flecha" y selecciona la opción TEXTO DINAMICO (dynamic text) junto con asignarle al nombre de variable (var) la palabra "time" (sin comillas)

4. En el primer fotograma del simbolo ingresa la siguiente acción [en el panel de acciones.. obvio]

function getTime () {

var time = new Date();

var hour = time.getHours();

var minute = time.getMinutes();

var second = time.getSeconds();

var temp = ""+((hour>12) ? hour-12 : hour);

temp += ((minute<10) ? ":0" : ":")+minute;

temp += ((second<10) ? ":0" : ":")+second;

temp += (hour>=12) ? " P.M." : " A.M.";

return temp;

}

5. Incorpora el movie clip a la escena.

6. Selecciona el movie clip en la escena y otorgale la siguiente acción:

onClipEvent (enterFrame) {

time = getTime();

}

7. Guarda, prueba, exporta y LISTO!

Cómo funciona?
La función "getTime()" primero crea un nuevo objeto "date" el cual es usado para obtener la hora actual con sus minutos y segundos. Luego el operador "?: conditional" (una forma abreviada del comando "if...else" se usa para determinar los formatos HH:MM:SS y AM/PM y lo asigna a la variable "temp".
Por ejemplo en la siguiente línea de código se chequea si el valor de "hours" es mayor que 12, si es así, se resta 12 a "hour" y se le asigna a "temp". Sin esto, el valor "hour" se asigna tal como lo recoge el "getTime()" y lo asigna al "temp"

var temp = ""+((hour>12) ? hour-12 : hour);

La lógica es más o menos similar para los minutos ("minute") y segundos ("seconds") , esta vez se usa para chequear si el valor es menor que 10. De ser así, se le incluye un "0" (cero) al "temp" antes del valor de los minutos o segundos. Sin esto los minutos y segundos se mostrarían con número enteros tal como lo genera el "getTime()".

Finalmente se agrega "PM" si la hora "hour" en el "getTim()" es mayor que 12, de lo contrario, se le agrega "AM".

servido por Nicolás 17 comentarios compártelo

17 comentarios · Escribe aquí tu comentario

Juan

Juan dijo

E amigo! tngo una duda enorme... sería posible crear un reloj k muestre una cuentra atras? es decir... por ejemplo kiero k cuente k faltan 20 horas para alg, y k vaya bjando hasta cero, a ser psible en formato HH:MM:SS. Muchas gracias d antemano

21 Noviembre 2005 | 04:47 PM

nicolasespinoza

nicolasespinoza dijo

Eso lo puedes hacer facilmente con un JavaScript.
Luego de este comentario publicaré como se hace a modo de "open source"... a ver si a alguien más le sirve.

21 Noviembre 2005 | 05:53 PM

jorge

jorge dijo

Tome tu reoj, pero muestra el hour una hora atrasado, sabes porque sucede.
Gracias

27 Diciembre 2005 | 01:41 PM

nicolasespinoza

nicolasespinoza dijo

el reloj toma la hora desde el reloj de TU computador, por lo que debes cambiar la hora en tu sistema operativo.

espero que soluciones tu problema.

28 Diciembre 2005 | 04:46 AM

fernando

fernando dijo

segui los pasos para crear tu relog pero no me funciono

me podrias mandar el archivo ya creado por favor
(.fla)

6 Enero 2006 | 08:12 PM

nicolasespinoza

nicolasespinoza dijo

no me dejas ninguna dirección para enviarte el archivo.

por qué no te resulta?
te aparece algún error de salida?

revisa bien los pasos publicados, un error común es que el nombre de las VARIABLE que se le debe asignar al texto dinámico se escribe en el cuadro VAR y no en el NOMBRE DE INSTANCIA, ese es un error común que hace que la película no funcione.

ijalá te sirva el consejo.

6 Enero 2006 | 08:56 PM

Patricia

Patricia dijo

Cómo puedo hacer un reloj analógico?
Necesito hacer una presentación en flash y me gustaría hacer un reloj analógico con las agujas "de texto"...

15 Febrero 2006 | 04:11 PM

CARLOS ANGULO PONCE

CARLOS ANGULO PONCE dijo

Mira trate de hacer este reloj y no me salio, creo que no me equivoque me puedes proporcionar mas ayuda te lo agradeceria, puedes mandar a la direccion carlosanguloponce@hotmail.com

16 Febrero 2006 | 01:48 AM

CARLOS ANGULO PONCE

CARLOS ANGULO PONCE dijo

Ahhh tambien quiero agregar una foro a mi pagina como lo puedo hacer, asi como se muestra, es muy complicado ???

16 Febrero 2006 | 01:50 AM

CARLOS ANGULO PONCE

CARLOS ANGULO PONCE dijo

Hey mira si me puedes sar un poco de informacion de PHP o donde puedo ver algo relacionado ya andube buscando acerca de esto y no esta muy complicado, se mi facilita la programacion por que lleve en la universidad C Y C++, veo que es similar, o parecida

17 Febrero 2006 | 01:39 AM

Ariel

Ariel dijo

Hola Nicolas, tampoco pude hacer el reloj.Me podrias enviar el archivo (.fla) a arielfa@yahoo.com
Desde ya muchas gracias. Ariel.-

28 Febrero 2006 | 11:16 PM

Pablo

Pablo dijo

Hola!!! Queria saber como puedo hacer que según la hora que aparezca en el reloj vaya a un fotograma o a otro.

Muchas gracias por la ayuda.

Hasta pronto.

30 Marzo 2006 | 10:49 AM

williams

williams dijo

Hola !!!!

antes todo buenas
me gustaria saber como puedo hacer que según pasado un tiempo en el reloj vaya a un fotograma determinado algo así como un cronometro, es que necesito hacer un proyecto de la universidad, y necesito que pasado un tiempo me busque otro fotograma.
ante todo mi agradecimientos por su tiempo dedicado.

Muchas gracias por la ayuda.
williams

williams05012@ssp.jovenclub.cu

12 Mayo 2006 | 07:39 PM

Joc

Joc dijo

Hola mira no me quiso funcionar el reloj q puedo hacer si me pudieras mandar los pasos mejor explicados (con fotos para guiarme) o el archivo flash te los agredeceria enormemente
gracias
mi correo es frajir@hotmail.com
francisco.joc@gmail.com
puedes mandarme respuesta a cualquiera de los dos.
gracias nuevamente

17 Mayo 2006 | 04:09 AM

Roberth

Roberth dijo

Saludos, me gustaria saber porque no aparece el reloj, segui todos los pasos pero nada, si pudieras mandarme el archivo .fla te lo agradeceria mucho

De ante mano muchisimas gracias.... =D

29 Junio 2006 | 05:15 AM

Jose Luis Escalante

Jose Luis Escalante dijo

queria saber como se puede hacer el reloj pero en el Flash Mx, porque no le encuentro forma de como hacerlo basandome en tu ejemplo.

saludos

19 Julio 2006 | 07:37 PM

maria doraci

maria doraci dijo

oi tudo bem meu mail e mariadoraci2006@hotmail.com beijos

3 Octubre 2006 | 12:09 AM

Escribe tu comentario


Sobre mí

Avatar de Nicolás

nicolásespinoza | diseñográfico

Viña del Mar, Chile
ver perfil »
contacto »



Licencia Creative Commons

Creative Commons License

Fotos

Nicolás Espinoza Filippi todavía no ha subido ninguna foto.

¡Anímale a hacerlo!

Buscar

suscríbete

Selecciona el agregador que utilices para suscribirte a este blog (también puedes obtener la URL de los feeds):

¿Qué es esto?

Crea tu blog gratis en La Coctelera