Ver Mensaje Individual
  #3  
Antiguo 12-11-2009
Avatar de ixMike
ixMike ixMike is offline
Miembro
 
Registrado: feb 2004
Posts: 1.151
Reputación: 22
ixMike Va por buen camino
Lo más cómodo sería instalarte un componente de alguna librería, como el TDBDateEdit que menciona rgstuamigo o algún TDBMaskEdit que pueda haber por ahí.

Otra cosa que puedes hacer es, en el evento OnExit del TDBEdit, comprobar la fecha y, si no tiene el formato adecuado, mostrar el mensaje de error y hacer que no pierda el foco.

Por ejemplo, se me ocurre esto (no sé si tendrá alguna carencia):

Código Delphi [-]
procedure TForm1.DBEdit1Exit(Sender: TObject);
var
  Fecha: TDateTime;
begin
  try
  Fecha:=StrToDate(DBEdit1.Text);
  except
  ShowMessage('El formato de fecha introducido no es válido');
  DBEdit1.SetFocus;
  end;
end;


Por otra parte, y como también ha dicho rgstuamigo, es muy raro que el programa se cierre por un error como ese. ¿El error que te sale es el típico de Delphi "This is not a valid Date format", o es algún error más "extraño"? Podrías decirnos qué error te sale, a ver si se puede solucionar lo de que se cierre el programa


Salu2
Responder Con Cita