Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 28-09-2006
Alexis7788 Alexis7788 is offline
Miembro
 
Registrado: sep 2006
Posts: 30
Poder: 0
Alexis7788 Va por buen camino
Comprobar que es Integer

Buenos días, necesito comprobar que un número introducido desde teclado en un TEdit es realmente un Integer. Alguien sabe cómo puedo hacerlo o cómo puedo recibir la Exception "EConvertError" que me hace cerrar la ejecución de la aplicación??

Mil gracias
Responder Con Cita
  #2  
Antiguo 28-09-2006
mensana mensana is offline
Miembro
 
Registrado: sep 2006
Posts: 69
Poder: 18
mensana Va por buen camino
// Código no comprobado

try
Valor := StrToInt(Edit1.Text);
Result := True;
except
on E:EConvertError do: Result := False;
end;
Responder Con Cita
  #3  
Antiguo 28-09-2006
Avatar de Bicho
[Bicho] Bicho is offline
Miembro Premium
 
Registrado: jul 2003
Ubicación: Inca - Mallorca
Posts: 1.776
Poder: 22
Bicho Va por buen camino
Tambien puedes usar la función TrsStrToInt que devuelve false si no se puede convertir a entero y te ahora la excepción.

Tambien le puede echar un vistazo a éste hilo, a ver si te puede ayudar.

Saludos
Responder Con Cita
  #4  
Antiguo 28-09-2006
Avatar de BlueSteel
[BlueSteel] BlueSteel is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Concepción - Chile
Posts: 2.310
Poder: 23
BlueSteel Va por buen camino
Talking

intenta con este código en el evento OnKeyPress del TEdit

Código Delphi [-]
     If Key in ['0'..'9']=false then
     If Key<>#8 then key:=#0;

espero que te sirva... a mi me funciona de maravilla
__________________
BlueSteel
Responder Con Cita
  #5  
Antiguo 01-10-2006
xelip xelip is offline
Miembro
 
Registrado: ago 2006
Posts: 21
Poder: 0
xelip Va por buen camino
Smile

hola,

tambien se puede hacer con algo de algoritmizacion, es decir, un integer solo tiene 32 bit = 4 byte.
si al numero que lees del edit, le restas 1 hasta que sea menos que 1, entoces comprobando despues si es 0 o no, sabras si es integer o no, en el peor de los caso tendras que restar 2 a la 32 veces, relativamente rapido:

repeat
i := i - 1;
until i menor que 1
if i = 0 then es integer.
Saludo...
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
comprobar datos en DBgrid coleleon OOP 1 11-12-2005 13:28:49
comprobar si una sentencia SQL es válida Lionel SQL 5 29-03-2004 17:24:54
Comprobar la conexion al servidor de bd fjolivares Conexión con bases de datos 5 30-01-2004 11:01:14
comprobar?? botones67 Varios 5 03-10-2003 21:09:05
comprobar?? botones67 Conexión con bases de datos 2 03-10-2003 19:29:21


La franja horaria es GMT +2. Ahora son las 07:12:44.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi