Hola ale_metall, la función IsValidDate te indica si un año, mes y dia corresponden a una fecha valida, si la fecha es valida te devuelve True, esta función la puedes utilizar de esta forma, pero talvez tengas que hacer mas controles.
Código Delphi
[-]
var
Anio, Mes, Dia : Word;
begin
Dia := StrToInt(Copy(MaskEdit1.Text,1,2));
Mes := StrToInt(Copy(MaskEdit1.Text,4,2));
Anio := StrToInt(Copy(MaskEdit1.Text,7,2));
if IsValidDate(Anio,Mes,Dia) then
showmessage('La fecha es correcta')
else
showmessage('La fecha es incorrecta');
end;
para mi, sería mejor que utilices la función TryStrToDate y te evitas de hacer un monton de controles, lo utilizas de esta forma.
Código Delphi
[-]
var
Fecha : TDateTime;
begin
if TryStrToDate(MaskEdit1.Text, Fecha) then
showmessage('La fecha es correcta')
else
showmessage('La fecha es incorrecta')
o utilizas un
TDateTimePicker como te dice el amigo Egopolice .
Saluditos