Al ver lo que ha escrito el amigo Viet, me he recordado que yo también utilizo esa técnica, por lo tanto, me retracto de la última parte de mi mensaje:
Esta es una muestra del código, que nada más ver el de Viet me sonaba mucho.
Código:
procedure TfrFactFechas.mkFiniExit(Sender: TObject);
begin
try
fini:=StrToDate(mkFini.text);
except
Application.MessageBox('Formato de fecha incorrecto','Atención',mb_Ok +mb_IconQuestion);
mkFini.SetFocus;
end;
end;
Otro Saludo.