FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
validar un integer cargado en un edit
Hola gente del foro, les comento que estoy realizando una aplicación en delphi7 y me surgió un problemita a la hora de validar un edit, el tema es asi yo ingreso un numero de DNI (tipo numérico) en un edit luego paso ese dato a integer y lo guardo en una tabla de esta forma: Table1.FieldByName('Dni').AsInteger:=StrToInt(Edit3.Text);
Cuando se ingresa un valor que no es numérico la aplicación se cuelga porque no es un valor valido para almacenar en la tabla, mi idea es anticiparme a la llegada del error y "desviar" el código de manera que no se cuelgue la aplicación y avisar al usuario que ese no es un valor permitido, pero no se me ocurre como? es posible lograr esto o algo parecido? gracias. |
#2
|
||||
|
||||
La más sencilla que se me ocurre es que utilices:
Si es incorrecto te guardará un 0 en lugar de fallar. Otra opción es que compruebes el contenido antes de intentar guardarlo, para avisar al usuario. Aun puedes utilizar otra similar: TryStrToInt
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
#3
|
|||
|
|||
Nada mas como complemento, o no se si en versiones nuevas de delphi se pueda con el strtoint, pero en versiones hasta la 7 es StrToIntDef(Edit3.Text, 0);
|
#4
|
||||
|
||||
Hola marcos.
Existen dos modos que pueden ingresar caracteres que no son números, en forma directa y pegándolos sobre el Edit. Para evitar el ingreso usa el evento OnKeyPress del Edit: Código:
procedure TForm1.Edit3KeyPress(Sender: TObject; var Key: Char); begin if not (Key in [#8,#13,'0'..'9']) then begin Beep; Key:= #0; end; end; Código:
procedure TForm3.Edit1Exit(Sender: TObject); var n,cd: Integer; begin Val(Edit3.Text, n, cd); if cd > 0 then begin ShowMessage('No es un número válido'); Edit1.SetFocus; end; end;
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Validar que el edit contenga 12,13 o 14 digitos | Lizette | Varios | 3 | 19-11-2008 12:07:00 |
Guardar Integer con Db edit | elfedecafe | Conexión con bases de datos | 4 | 09-12-2007 07:10:02 |
Validar Edit | maru1981 | OOP | 4 | 03-08-2007 01:22:15 |
Validar Edit | Elite237 | OOP | 3 | 31-07-2007 17:34:39 |
Validar Fecha en Edit | eljavi | Varios | 4 | 04-03-2007 03:34:33 |
|