Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 06-06-2014
Aliixeess Aliixeess is offline
Miembro
NULL
 
Registrado: jun 2014
Posts: 10
Poder: 0
Aliixeess Va por buen camino
Convertir integer a formato de hora en un TTime.

Hola, saben si es posible convertir un integer a formato de hora?
tengo mi variable iniciocolumna declarada como integer y la variable MyInicio como TTime, ¿como puedo lograr almacenar el valor de iniciocolumna en MyInicio?
Responder Con Cita
  #2  
Antiguo 06-06-2014
Avatar de duilioisola
[duilioisola] duilioisola is offline
Miembro Premium
 
Registrado: ago 2007
Ubicación: Barcelona, España
Posts: 1.732
Poder: 20
duilioisola Es un diamante en brutoduilioisola Es un diamante en brutoduilioisola Es un diamante en bruto
¿Cuál es la relación de enteros por hora?
1 = 1 hora
60 = 1 hora
alguna otra

Una variable TDateTime es un número donde la parte entera son días y la parte decimal la parte del día

Por lo tanto, si 1 es 1 hora:
24 horas = 1 TDateTime
1 hora = 1/24 = 0.417 TDateTime

Código Delphi [-]
var
  Hora : integer;
  aTime : TDateTime;
begin
  Hora = 2;
  aTime := (1/24) * Hora;
  ShowMessage(TimeToStr(aTime))
end;
Responder Con Cita
  #3  
Antiguo 06-06-2014
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Cita:
Empezado por Aliixeess Ver Mensaje
Hola, saben si es posible convertir un integer a formato de hora?
tengo mi variable iniciocolumna declarada como integer y la variable MyInicio como TTime, ¿como puedo lograr almacenar el valor de iniciocolumna en MyInicio?
Si la consulta es si se puede asignar un tipo Integer a uno TTime, la respuesta es si.
Es una cuestión de tipos: TTime = TDateTime = Double, y por supuesto, es posible asignar un tipo Integer a una variable de tipo Double.

Ahora si esto tiene sentido es otra cosa... El tipo TDateTime es un número real de ocho bytes, cuya parte entera representa la fecha como la cantidad de días transcurridos desde 1899 y la parte decimal representa la hora.

De allí que cualquier entero que asignes a un TTime/TDateTime/Double tendrá una componente fraccionaria igual a cero.

De modo siendo MyInicio de tipo TTime, hacer:
Código Delphi [-]
  MyInicio:= iniciocolumna;
Es lo mismo que:
Código Delphi [-]
  MyInicio:= 0;

Eso sí, podrías hacer:
Código Delphi [-]
  MyInicio:= iniciocolumna / un_valor;
Pero no sé que valores puede tomar iniciocolumna y que valores deseas obtener en MyInicio.

Saludos

Edito: No había visto el mensaje de duilioisola, pero el planteo que que me hago es similar .
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....

Última edición por ecfisa fecha: 06-06-2014 a las 02:45:12.
Responder Con Cita
  #4  
Antiguo 06-06-2014
Aliixeess Aliixeess is offline
Miembro
NULL
 
Registrado: jun 2014
Posts: 10
Poder: 0
Aliixeess Va por buen camino
Duda

los valores que toma la variable iniciocolumna son solo enteros, van de 7 a 23.
Entonces lo que quiero lograr es que la variable MyInicio sea igual a 7:00 cuando iniciocolumna es igual a 7, estuve buscando alguna instruccion para convertir integers a ttime, pero no he encontrado nada.
Responder Con Cita
  #5  
Antiguo 06-06-2014
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola Aliixeess.
Cita:
Empezado por Aliixeess Ver Mensaje
los valores que toma la variable iniciocolumna son solo enteros, van de 7 a 23.
Entonces lo que quiero lograr es que la variable MyInicio sea igual a 7:00 cuando iniciocolumna es igual a 7, estuve buscando alguna instruccion para convertir integers a ttime, pero no he encontrado nada.
Entiendo, entonces hace:
Código Delphi [-]
   MyInicio:= 1/24 * iniciocolumna;

Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #6  
Antiguo 07-06-2014
Aliixeess Aliixeess is offline
Miembro
NULL
 
Registrado: jun 2014
Posts: 10
Poder: 0
Aliixeess Va por buen camino
Solucionado

Gracias! esa era la respuesta.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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
Convertir segundos a formato hora, minutos y segundos jafera Varios 2 07-02-2009 23:13:45
convertir un integer en hh:mm:ss jmlifi SQL 1 02-11-2005 19:00:44
Concatenacion de integer a hora seba_cipo Varios 7 21-10-2005 15:38:07
concatencaion de integer a hora seba_cipo Varios 1 20-10-2005 00:36:29
convertir a formato de Hora ebeltete SQL 1 05-06-2003 10:26:59


La franja horaria es GMT +2. Ahora son las 21:38:28.


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