![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
|||
|
|||
|
No me funciona....
No se que estoy haciendo mal.. uso directamente fechas en Tdatetime. perdon!!!!! DurTotal es Extended; No uso los dias en string directamente... Uso dias, horas, minutos en Spinedits y los convierto a mano en tdatetime con la formula anterior. A lo mejor no lo hago bien??? Lo curioso es que me funciona bien al comparar. Comienzo la captura InicioCap=hora actual) le añado la DurTotal(la que paso con los SpinEdits) y comparo Now>=DurTotal (esto dentro de un timer)
Última edición por alquimista fecha: 16-05-2011 a las 15:47:51. |
|
#2
|
||||
|
||||
|
Lo mejor es que utilices las funciones que te da Delphi, siempre que puedas.
Si cambias de version de Delphi, es más seguro que puedas compilar sin problemas. También si quieres pasar el código a FreePascal / Lazarus por ejemplo. Puede que cambie la representación interna de un TDateTime (parte entera días, parte decimal horas) a otra diferente. Si utilizas funciones, solo deberás reemplazar o reprogramar la función, si es que la nueva versión no lo ha hecho ya. Mira estas dos de la Unit DateUtils:
Deberás tirar los datos de los SpinEdit dentro de los parámetros correspondientes de la función y obtendrás un TDateTime. Última edición por duilioisola fecha: 16-05-2011 a las 15:56:58. |
|
#3
|
|||
|
|||
|
Estaba pensando en rediseñar y usar las funciones de delphi..
Uso Delphi 2007 por lo que no tendre problemas... Lo que pasa que hay tantas funciones que tiene para fechas que no sabia por donde empezar... |
|
#4
|
||||
|
||||
|
Hola alquimista.
Usar las funciones de Delphi, como ya te lo comentó duilioisola, es más simple y seguro. Pero veo que en este cálculo tenés un error: No es: SEDay.Value * 3600 * 60, ya que el día tiene 24 horas y no 60. Lo que correspondería es: SEDay.Value * 24 * 3600. Seguramente sea eso lo que te genere el error. Saludos.
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... |
|
#5
|
|||
|
|||
|
He modificado el error de las 24 horas.. y he puesto 1 dia y 1 minuto y al pasar el minuto me muestra que quedan las 24 horas restantes. Parece que esto va bien...
aunque antes ya habia desactivado el spinedit de los dias... y lo del porcentaje no me iba bien... EStoy probando lo del encodedatetime... Vamos estoy reescribiendo con otras variables para ir comparando los valores antiguos y los nuevos... |
|
#6
|
|||
|
|||
|
Bueno...
vale... Me falta lo del porcentaje para una barra de progreso.... ¿Que hago ahora?.. paso el str a numero otra vez y lo multiplico por 10000000000 ?? No me queda muy claro... Ya he trabajado con las funciones de delphi y he rehecho las rutinas Lo he solucionado de esta forma.. Por si a alguien le sirve....
Si me podeis poner algún ejemplo de lo del porcentaje.. Gracias por la ayuda... |
|
#7
|
||||
|
||||
|
Hola.
Poné en un form un TTimer un TProgressBar y un TLabel y probá si este código hace más o menos lo que buscas: Como verás las pruebas las hice con minutos, si usaba días u horas estaría más seguro, pero la respuesta hubiera llegado un poco tarde... ![]() Saludos.
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... Última edición por ecfisa fecha: 17-05-2011 a las 08:04:52. |
|
#8
|
||||
|
||||
|
Regla de tres simple:
Código:
Tiempo_Inicial = Hora de Comienzo Tiempo_Final = Hora de Finalizacion Total_Tiempo = Tiempo_Final - Tiempo_Inicial Tiempo_Transcurrido = Now - Tiempo_Inicial Total_Tiempo -------- 100% Tiempo_Transcurrido --- x% x = (Tiempo_Transcurrido x 100%) / Total_Tiempo |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| porcentaje restante entre dos fechas - delphi | amo3k | OOP | 6 | 13-02-2010 16:08:54 |
| mostrar un porcentaje o progressbar | rzf1983 | Varios | 8 | 25-10-2007 19:05:13 |
| tiempo restante | fedeloko | Varios | 3 | 30-11-2004 18:49:51 |
| mostrar porcentaje con CGauge del texto de un Edit | garth | C++ Builder | 3 | 26-03-2004 12:23:25 |
| Matemáticas: Calcular porcentaje | DarkByte | Varios | 9 | 01-02-2004 17:42:08 |
|