Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Desarrollo en Delphi para Android
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy


Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 14-01-2021
pablocarlos pablocarlos is offline
Miembro
 
Registrado: ene 2021
Posts: 56
Poder: 4
pablocarlos Va por buen camino
Question cuenta regresiva en android

Saludos! Espero haber sido preciso en el titulo del hilo. Necesito, en lo posible, me orienten en hacer un reloj (label) que sea en cuenta regresiva dias, horas, minutos, segundos. Cuando hablo reloj en cuenta regresiva seria ---> por ejemplo faltan 12:20:30:10 al segundo siguiente 12:20:30:09 y asi hasta 00:00:00:00 y al llegar a cero comience nuevamente. Se agradece su tiempo!!!
Edito por olvido. Trabajo con rad studio 10.4

Última edición por pablocarlos fecha: 14-01-2021 a las 18:35:50. Razón: olvide detalle importante
Responder Con Cita
  #2  
Antiguo 15-01-2021
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.040
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Hola, ¿qué llevas hecho?, ¿cómo lo has planteado? ¿en qué tienes problemas?
Responder Con Cita
  #3  
Antiguo 15-01-2021
pablocarlos pablocarlos is offline
Miembro
 
Registrado: ene 2021
Posts: 56
Poder: 4
pablocarlos Va por buen camino
Smile

Gracias Casimiro por tu tiempo. Este es el código pero el "update" no me lo reconoce rad studio, si en delphi 7
Código Delphi [-]
procedure TForm1.btnStartClick(Sender: TObject);
var
 Min,Hour,Sec:Integer;
 MinStr,HourStr,SecStr:String;
begin
 Hour := StrToInt(HoursEdt.Text);
 Min := StrToInt(MinsEdt.Text);
 Sec := StrToInt(SecEdt.Text);
 HourStr := IntToStr(Hour);
 MinStr := IntToStr(Min);
 SecStr := IntToStr(Sec);
  while Hour > -1 do
   begin
     while Min > -1 do
      begin
        while Sec > -1 do
         begin
           Sleep(1000);
           Sec := Sec -1;
           SecStr := IntToStr(Sec);
           lContador.Text := HourStr + ':' + MinStr + ':' + SecStr;
           //lContador.Update;
         end;
      Min := Min -1;
      Sec := 60;
      MinStr := IntToStr(Min);
      lContador.Text := HourStr + ' : ' + MinStr + ' : ' + SecStr;
      lContador.Update;
      end;
   Hour := Hour -1;
   Min := 60;
   HourStr := IntToStr(Hour);
   lContador.Text := HourStr + ' : ' + MinStr + ' : ' + SecStr;
   lContador.Update;
   end;
Responder Con Cita
  #4  
Antiguo 16-01-2021
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.040
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Cita:
Empezado por pablocarlos Ver Mensaje
... no me lo reconoce rad studio, si en delphi 7
¿Que no te reconoce el qué?
Responder Con Cita
  #5  
Antiguo 16-01-2021
pablocarlos pablocarlos is offline
Miembro
 
Registrado: ene 2021
Posts: 56
Poder: 4
pablocarlos Va por buen camino
Cita:
Empezado por Casimiro Notevi Ver Mensaje
¿Que no te reconoce el qué?
en la etiqueta lcontador. "update"
Responder Con Cita
  #6  
Antiguo 16-01-2021
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.040
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
¿Y qué es lcontador?

Por favor, lee nuestra guía de estilo, gracias.
Responder Con Cita
  #7  
Antiguo 16-01-2021
pablocarlos pablocarlos is offline
Miembro
 
Registrado: ene 2021
Posts: 56
Poder: 4
pablocarlos Va por buen camino
Disculpas. lContador es un label. Gracias

Última edición por pablocarlos fecha: 16-01-2021 a las 23:26:59. Razón: correción
Responder Con Cita
  #8  
Antiguo 17-01-2021
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.040
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Creo que no estás siendo claro con la exposición de tu problema.
Por ejemplo, lContador.Text no existe en delphi7, en todo caso sería lContador.Caption.
Por favor, replantea correctamente tu duda. No olvides nuestra guía de estilo, gracias.
Responder Con Cita
  #9  
Antiguo 18-01-2021
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.278
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por pablocarlos Ver Mensaje
Gracias Casimiro por tu tiempo. Este es el código pero el "update" no me lo reconoce rad studio, si en delphi 7
Tu código es correcto, simplemente hay un par de detalles.

1) Lo primero es que no hace falta hacer un Update de los controles/componentes; En el caso de un Label, por ejemplo, sólo cambiando la propiedad Text (o Caption en VCL) basta para cambiar el valor. Por tanto las líneas que hacen el Update no son necesarias.

2) Si quitas esas líneas, verás que tu aplicación no responde y el TLabel no cambia. Eso lleva al segundo punto.
Tu código se ejecuta continuamente y no da tiempo a procesar mensajes de la cola de Windows, entre ellos los que actualizan la parte visual.
Para eso delphi tiene una instrucción.

Código Delphi [-]
Application.ProcessMessages;

Esto le indica al programa que en ese punto, detenga la ejecución y procese mensajes de la cola de Windows.
Se suele usar en códigos como el tuyo, donde hay un bucle que ejecuta código continuamente.

Por lo tanto, si quitas las las líneas que incluyen los Updatesy añades la línea anterior debajo del Sleep, por ejemplo, el programa debería funcionar correctamente.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #10  
Antiguo 19-01-2021
pablocarlos pablocarlos is offline
Miembro
 
Registrado: ene 2021
Posts: 56
Poder: 4
pablocarlos Va por buen camino
Gracias Casimiro por tu tiempo que es muy valioso. Gracias Neftali por tu explicación y conocimientos compartidos. El codigo quedo de la siguiente manera (ahora me ocuparé de algunos detalles.
Código Delphi [-]
procedure TForm1.btnStartClick(Sender: TObject);
var
 Min,Hour,Sec:Integer;
 MinStr,HourStr,SecStr:String;
begin
 Hour := StrToInt(HoursEdt.Text);
 Min := StrToInt(MinsEdt.Text);
 Sec := StrToInt(SecEdt.Text);
 HourStr := IntToStr(Hour);
 MinStr := IntToStr(Min);
 SecStr := IntToStr(Sec);
  while Hour > -1 do
   begin
     while Min > -1 do
      begin
        while Sec > -1 do
         begin
           Sleep(1000);
           Application.ProcessMessages;
           lContador.Text;
           Sec := Sec -1;
           SecStr := IntToStr(Sec);
           lContador.Text := HourStr + ':' + MinStr + ':' + SecStr;
         end;
      Min := Min -1;
      Sec := 60;
      MinStr := IntToStr(Min);
      lContador.Text := HourStr + ':' + MinStr + ':' + SecStr;
      end;
   Hour := Hour -1;
   Min := 60;
   HourStr := IntToStr(Hour);
   lContador.Text := HourStr + ' : ' + MinStr + ':' + SecStr;
   end;

end;
Está funcionando, lo dejo por aqui, tal vez a alguien le haga falta. Gracias totales!
Responder Con Cita
  #11  
Antiguo 19-01-2021
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.040
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
sobre Android SDK Manager y diferentes versiones de Android cocute Desarrollo en Delphi para Android 2 29-11-2017 21:24:00
respuesta extraña con cuenta regresiva y apagado de la pantalla danielmj Desarrollo en Delphi para Android 2 02-06-2015 10:13:28
Cuenta regresiva en pantalla pape19 Varios 3 05-06-2012 02:43:50
Error en cuenta/Login/cuenta robada coso___ La Taberna 17 24-02-2009 17:30:14
seria prudente comenzar la cuenta regresiva? Delphius La Taberna 5 12-05-2007 01:22:22


La franja horaria es GMT +2. Ahora son las 03:07:38.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi