Gracias Neftali y GustavoCruz por su pronta respuesta.Les comento que tratando de resolver el problema decide usar el componente que trae por defecto lazarus que es el TDateEdit. Este el código que uso para poder validar que el usuario ha introducido una fecha correcta.
Código:
var
MyDateTimeVar: TDateTime;
begin
try
MyDateTimeVar:= StrToDate(fechaentrega.Text);
except
on EConvertError do begin
Application.MessageBox('La fecha de entrega no es valida, favor de verificar','Error',mb_iconstop);
end;
end;
end;
Pero solo en ocasiones detecta el error. Le adjunto unas imágenes donde en una si me detecta el error por ejemplo si solo pongo el mes. pero si pongo día y mes incompletos y no pongo el año, no me muestra ningún mensaje.