| Ver tema anterior :: Ver tema siguiente |
| Autor |
Mensaje |
Rebeca Cdt

Registrado: 30 Nov 2005Mensajes: 4
|
Publicado: Mie 30 Nov, 2005 11:43 am Asunto: fechas |
|
|
| Hola, estoy haciendo una aplicacion, y me gustaria saber cual es la mejor manera para q el usuario introduzca las fechas, actualmente lo tengo con 3 Tedit's, para el dia, mes y año;peor no me parece la mejor forma.¿alguien me puede ayudar? |
|
| Volver arriba |
|
 |
Tugui Master


Registrado: 09 Nov 2002Mensajes: 663
|
Publicado: Mie 30 Nov, 2005 11:51 am Asunto: |
|
|
Dependiendo de tus necesidades puedes utilizar los controles TMonthCalendar o bien el TDateTimePicker ambos en la paleta win32, y para acceder a la fecha que ha seleccionado el usuario puedes utilizar por ejemplo:
| Código: |
AnsiString fecha_marcada = MonthCalendar1->Date.DateString();
|
_________________ ¡ADELANTE CON ESTE SUPER FORO! |
|
| Volver arriba |
|
 |
Rebeca Cdt

Registrado: 30 Nov 2005Mensajes: 4
|
Publicado: Mie 30 Nov, 2005 11:58 am Asunto: fechas |
|
|
Muchas gracias por tu ayuda, lo q me dices lo tenia pensado...En la aplicacion doy de alta a alumnos, y con lo q mas juego es con el año de nacimeiento, haciendolo como tu dices, como puedo separar el dia, el mes y el año?Espero q me entiendas.
Yo tenia pensado hacerlo con listas, en la q si metes los meses 4,6,9,11, solo te saque 30 dias...Pero me parece bastante mas complicado, verdad? |
|
| Volver arriba |
|
 |
Manolo(er_lolo) Capt


Registrado: 28 Jul 2003Mensajes: 172Ubicación: Salamanca
|
Publicado: Mie 30 Nov, 2005 12:10 pm Asunto: |
|
|
Para saber el año utiliza la funcion DecodeDate
| Código: | Word Dia, Mes, Anio;
DecodeDate(MonthCalendar1->Date, anio, mes, dia); |
Asi ya tienes el año en la variable.
Un saludo. |
|
| Volver arriba |
|
 |
Rebeca Cdt

Registrado: 30 Nov 2005Mensajes: 4
|
Publicado: Mie 30 Nov, 2005 12:23 pm Asunto: fechas |
|
|
Gracias de nuevo..He pensado q voy a hacerlo con los Tedit's, pq al pedir la fecha de nacimiento, con el TDateTimePicker, hay q ir demasiado para atrás...te pregunto unas dudas q me surgen ahora:
1. Como puedo hacer para que al meter el mes, el dia sea valido (lo de bisisesto....)
2. Cuando valido si el usuario ha metido 2 cifras en el Tedit del dia, lo hago en en evento Onclick del boton aceptar el alta, y si no esta bien pues lo vuelvo a meter. ¿Como puedo hacer, para validarlo en el mismo momento en el q el usuario ha metido el dia, y se pasa a meter el mes?
3. ¿Como recojo el dia q el usuario metió, para comprobar q esta entre 1..31? |
|
| Volver arriba |
|
 |
Tugui Master


Registrado: 09 Nov 2002Mensajes: 663
|
Publicado: Mie 30 Nov, 2005 12:30 pm Asunto: |
|
|
La solución de Manolo es muy correcta, y si quieres otra opción puedes hacer también:
#include <dateutils.hpp>
| Código: |
int anyo,mes,dia;
anyo = YearOf(MonthCalendar1->Date);
mes = MonthOf(MonthCalendar1->Date);
dia = DayOf(MonthCalendar1->Date);
|
Si buscas en la ayuda acerda de dateutils verás que hay muchas funciones que pueden ayudarte a la hora de manejar fechas. _________________ ¡ADELANTE CON ESTE SUPER FORO! |
|
| Volver arriba |
|
 |
Mario Cdt


Registrado: 23 Sep 2004Mensajes: 22Ubicación: Tijuana B.C., México
|
Publicado: Vie 02 Dic, 2005 4:13 am Asunto: |
|
|
el componete TDateTimePicker te permite escribir la fecha sin necesidad de navegar con el mouse. Puedes teclear diretamente el año, mes y dia sin abrir el combo (para que la captura sea mas rapida) y asi se puedes validar la fecha con el componente. _________________ Mario. |
|
| Volver arriba |
|
 |
alfredo Master

Registrado: 13 Oct 2003Mensajes: 246Ubicación: Valencia Venezuela
|
Publicado: Lun 05 Dic, 2005 6:45 pm Asunto: |
|
|
| Hola, puedes usar el TMaskEdit tambien, te ahorra trabajo para validar la fecha y el usuario no tiene que tipear los separadores |
|
| Volver arriba |
|
 |
Angel Master


Registrado: 15 Abr 2003Mensajes: 2311Ubicación: Toledo (España)
|
|
| Volver arriba |
|
 |
|