Clarion - Tiempo decreciente

 
Vista:

Tiempo decreciente

Publicado por Pablo (15 intervenciones) el 09/10/2012 19:13:48
Hola, necesito crear un reloj decreciente en minutos y segundos para controlar el tiempo restante para una mesa de pool. El operador asigna los minutos por ejemplo: 20, 30 o 60 minutos y de alli necesito un cronometro decreciente que me muestre cuanto minutos y segundos quedan de juego en la mesa asignada, desde ya gracias. Pablo de Salta
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Tiempo decreciente

Publicado por Francisco J. Valencia (87 intervenciones) el 10/10/2012 01:00:34
Pablo:

Clarion maneja los valores de tiempo en centesimas de segundo. La hora la expresa en centésimas de segundo despues de la medianoche.
Entonces un minuto es igual a 60 x100 = 6000

Una sugerencia de como desplegar un tiempo transcurrido es:
En una ventana activa el evento timer y que reciba un parámetro que contenga la cantidad de minutos.

LOC:TiempoInicio = clock()
LOC:TiempoFinal = LOC:TiempoInicio + (LOC:MINUTOS*60*100)
LOC:TiempoTranscurrido = LOC:TiempoFinal - LOC:TiempoInicio
LOC:Mensaje = format(loc:TiempoTranscurrido,@t4)

Solo considera cuando al sumar los minutos al tiempo de inicio, pasemos de la media noche, para que hagas una validación extra.

Espero te sirva
Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Tiempo decreciente

Publicado por Pablo (15 intervenciones) el 10/10/2012 03:49:40
Hice un rutina que se realiza con un timer=100
El codigo es:
case LOC:tp_as[1] !!!!!tiempo asigando en minutos!!!!
of 1 orof 20 orof 30 orof 60
LOC:ct_sg[1]=LOC:ct_sg[1]-1 !!!cantidad de segundos!!!
If LOC:ct_sg[1]=-1
LOC:ct_mt[1]=LOC:ct_mt[1]-1 !!!cantidad de minutos!!!!
LOC:ct_sg[1]=59
.
LOC:tiemp=clip(LOC:ct_mt[1]-1) & ':' & clip(format(LOC:ct_sg[1],@n02))
?LOC:tiemp{PROP:FontColor}=COLOR:White
.
anda perfecto, el tema es que cuando llega a cero vuelve a empezar pero en negativo, nose como pararlo, desde ya gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar