![]() |
De un memo a un TDataTime
Saludos, en mi programa tengo tres memos, en uno me introducen las horas(con dos dígitos), en otro me introducen los minutos (con otros dos) y en el tercero como habreis averiguado los segundos.
1) ¿Como puedo pasar esos tres datos que me introducen a una sola variable de tipo TDataTime? Gracias. |
debes utilizar la función EncodeDatetime.
|
Jolín que rapido me has contestado jajaja voy a probar creo que sabré ;-)
EncodeDateTime(const AYear, AMonth, ADay, AHour, AMinute, ASecond, AMilliSecond: Word):TDateTime; Muchas gracias |
EncodeDateTime.
Y por curiosidad, ¿porqué los tienes en memos? |
Chuta!!! Esto si que da rabia...:mad: Me demoro un pelín y viene una respuesta y contrarrespuesta...:(:rolleyes::p;):D:D
|
Cita:
|
Cita:
Salud OS |
Como no, me salen problemas, la funcion encodedatatime me pide el año, el mes el dia y el milisegundo que no los conozco, solo puedo calcular con los tres memos: la hora, minutos y segundo, que le paso en aquello que no conozco?
|
Cita:
Salud OS |
Ok gracias.
Y para pasar el contenido de un edit.caption (es quien contiene la hora por ejemplo) a word? Las variables de tipo word no se manejarlas :-( Gracias por vuestra paciencia :( |
Usa EncodeTime ;)
|
Estan volando :D :D :D
|
Cita:
Salud OS |
Pero que craks que soys jeje mil gracias!!!!!:)
|
Cita:
Salud OS |
Mensaje borrado.
|
Cita:
?, jajaja y precisamente pensaba si era el único activo en esta tarde (México), |
Hola
Pues claro, tienes razon Egostar. Saludos |
no se quedrá convertir esto en un clon del famoso "No responder"?
|
:eek::eek::eek: a la taberna compañeros!
Saludos |
Cita:
Cita:
Cita:
Salud OS |
Hola
La verdad y sin contradecirte por supuesto, no crees que esto se slucionaria con un datetimepicker, no se digo yo, el edit o el memo, no se. Que piensas.? Saludos |
Cita:
Cita:
Creo que la noche me está afectando... :p De todas formas, asi también se incrementa la cuota de mensajes, ¿no? ;) |
Cita:
Salud OS |
Cita:
Coincido al 100% contigo hermano caral. :D |
¿Qué hago mal poniendo esto?
Donde los tres parametros que le paso son el text de los edit respectivos. Me dice que incompatible String con tdatatime Thanks |
|
Cita:
Sin embargo, para que quieres hacer ese casting, no seria mas facil así:
Salud OS |
Genial arreglaste mi problema :-)
Una cosilla (creo que os deberia pagar por todo lo que me ayudais jaja), ya he conseguido que mediante tres edit introducidos por el usuario se muestre la hora que es en un label, que lo muestro con un ttimer, que pasa, que si pilla el ttimer con alguno de los edit en blanco de la hora, WUEEEEE!!! fallo del programa, alguien sabe como corregir eso? Por cierto prefiero trabajar con variables de tiop tiempo porque necesito hacer restas y demas. |
Cita:
|
Cita:
Solo que aquí veo otro problema, si capturan la hora puede ser que escriban datos erróneos, necesitas validar cada edit, por ejemplo que no coloquen letras solo números, que las horas sean entre 00 y 24, que los minutos y segundos sean entre 00 y 60.:cool: Y como te dice mi amigo poliburro, sería un buen gesto de tu parte hacerte miembro premium.;) Salud OS Edito: Si prefieres trabajar con valores time, debes de hacer lo que te comento, validar los edit antes de hacer la conversion a time. |
Cita:
Respecto a la validación, se hacerla de forma estatica, es decir, pillar un edit y ver si es correcto o no, pero no se hacerlo en "tiempo real", osea, que a la vez que el usuario vaya introduciendo por teclado ir viendo si esta bien (le dejo que escriba), o si lo ultimo que acaba de escribir esta mal y se lo borro. ¿Me he explicado? |
Cita:
Por ejemplo en el evento OnChange, verificas que no escriba letras en el evento OnExit, verificas si es un dato válido (00-24 para las horas y 00-60 para minutos y segundos) en caso de ser no válido regresas el foco a el edit. :rolleyes: Salud OS |
Vale muchas gracias, mañana seguiré con ello, ya es un poco tarde que hay que madrugar, ya tendreis noticias cuando grite socorro jajaja
gracias por todo de verdad, chao!!! |
Ya he retomado el programa jeje :-)
A ver si me ayudais con esto que por más que le doy vueltas no consigo ver el error, de tres edits consigo la hora introducida por el usuario y quiero calcular cuanto tiempo queda desde la hora actual, hasta la hora que ha introducido el usuario, lo hago de esta manera:
Pero siempre el tiempo restante que me sale es muchísimo mayor de lo que deberia, es decir, si el usuario me pone las 10:00 y actualmente son las 9:00 me sale que faltan 23 horas!!!! y además cada segundo va aumentando el tiempo restante en vez de disminuirse!!!! No tiene ni pies ni cabeza :-( |
La hora actual es mayor que la anterior, entonces deberias restar a-b y no b-a.
|
Ahí esta el problema, da igual si pongo a-b que b-a que el resultado del tiempo restante siempre es el mismo, lo acabo de comprobar otra vez por si acaso y nada.
A mi no se me ocurre porque falla :-( |
Tambien puedes hacer:
|
No estoy seguro de que esa funcion me sirva porque tan solo calcula la diferencia de horas, es decir, de 10:00 a 10:59 daria como resultado cero, y quiero que salgan horas, minutos y segundos...
gracias. |
Cita:
|
| La franja horaria es GMT +2. Ahora son las 18:38:27. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi