Club Builder - Foros de discusión Club Builder
Foro de C++Builder en español
 
 FAQFAQ   BuscarBuscar   MiembrosMiembros   Grupos de UsuariosGrupos de Usuarios   RegistrarseRegistrarse 
 PerfilPerfil   Entra para ver tus mensajes privadosEntra para ver tus mensajes privados   EntrarEntrar 

fechas

 
Publicar nuevo tema   Responder al tema    Foros de discusión -> Consultas
Ver tema anterior :: Ver tema siguiente  
Autor Mensaje
Mensaje    Asunto: fechas Responder citando

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
Ver perfil de usuario Enviar mensaje privado
Mensaje    Asunto: Responder citando

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
Ver perfil de usuario Enviar mensaje privado
Mensaje    Asunto: fechas Responder citando

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
Ver perfil de usuario Enviar mensaje privado
Mensaje    Asunto: Responder citando

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
Ver perfil de usuario Enviar mensaje privado MSN Messenger
Mensaje    Asunto: fechas Responder citando

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
Ver perfil de usuario Enviar mensaje privado
Mensaje    Asunto: Responder citando

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
Ver perfil de usuario Enviar mensaje privado
Mensaje    Asunto: Responder citando

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
Ver perfil de usuario Enviar mensaje privado Yahoo Messenger
Mensaje    Asunto: Responder citando

Hola, puedes usar el TMaskEdit tambien, te ahorra trabajo para validar la fecha y el usuario no tiene que tipear los separadores
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email
Mensaje    Asunto: Responder citando

O sencillamente mientras estás dentro del TDateTimerPicker poern la máscara de la fecha al revés: yyyy/mm/dd en lugar de dd/mm/yyy
_________________
Un saludo

Necesitamos tu ayuda: Envía AI al 27595 (Coste 1,20 euros + IVA)
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email
Mostrar mensajes de anteriores:   
Cambiar a:  
No puedes publicar temas nuevos en este foro
No puedes responder a temas en este foro
No puedes editar tus mensajes en este foro
No puedes borrar tus mensajes en este foro
No puedes votar en las encuestas de este foro


Hosting WordPress Indedmedia desde 3,99 €
© 2002–2026 Club Builder · Funciona con phpBB.