Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 08-01-2006
locorez locorez is offline
Registrado
 
Registrado: ene 2006
Posts: 4
Poder: 0
locorez Va por buen camino
comparar un string con un rango de valores

Wenas,
vereis, hace un rato que me estoy peleando con una cosa.
Quiero comparar que en el text de un edit, solo haya numeros. Para eso he creado esta funcion que no me va:
Código Delphi [-]
types
 rang= '0'..'9';
  numeric= set of rang;
...

function ValidaCadenes(cadena:string):boolean;
var
   i: integer;
   resultat: boolean;
   numeric1:numeric;
begin
    resultat:=true;
    for i:=0 to length(cadena) do begin
      if (cadena[i]=numeric1) then resultat:=false;
    end;
    result:=resultat;
end;
Como puedo hacerlo sin que me pete diciendome tipos incompatibles? porque he intentado pasar el string a entero con el strtoint y nada.
Saludos y gracias.

Última edición por vtdeleon fecha: 08-01-2006 a las 19:04:41.
Responder Con Cita
  #2  
Antiguo 08-01-2006
Avatar de vtdeleon
vtdeleon vtdeleon is offline
Miembro
 
Registrado: abr 2004
Ubicación: RD & USA
Posts: 3.236
Poder: 23
vtdeleon Va por buen camino
Saludos

Lo mas sencillo es usar el evento OnKeyPress del edit y poner este codigo
Código Delphi [-]
Procedure editOnKeyPress(...);
Begin
   if not (key in ['0'..'9',#13,#8]) then key:=#0
end;
Suerte

Y como veo que eres nuevo, Bienvenido al ClubDelphi. Date una miradita a la Guia de estilo y al uso de las etiquetas. Puede encotrar los enlaces en mi firma

Hasta luego
__________________
Van Troi De León
(Not) Guía, Code vB:=Delphi-SQL, ¿Cómo?
Viajar en el tiempo no es teóricamente posible, pues si lo fuera, ya estarían aqui contándonos al respecto!
Responder Con Cita
  #3  
Antiguo 09-01-2006
[fer21unmsm] fer21unmsm is offline
Miembro Premium
 
Registrado: dic 2005
Ubicación: Lima
Posts: 627
Poder: 19
fer21unmsm Va por buen camino
Cita:
Empezado por locorez
Wenas,
vereis, hace un rato que me estoy peleando con una cosa.
Quiero comparar que en el text de un edit, solo haya numeros. Para eso he creado esta funcion que no me va:
Código Delphi [-]
types
rang= '0'..'9';
numeric= set of rang;
...
 
function ValidaCadenes(cadena:string):boolean;
var
i: integer;
resultat: boolean;
numeric1:numeric;
begin
resultat:=true;
for i:=0 to length(cadena) do begin
if (cadena[i]=numeric1) then resultat:=false;
end;
result:=resultat;
end;
Como puedo hacerlo sin que me pete diciendome tipos incompatibles? porque he intentado pasar el string a entero con el strtoint y nada.
Saludos y gracias.
He modificado un poco tu código: ya no necesitas definir ningún tipo.

Código Delphi [-]
function ValidaCadenes(cadena:string):boolean;
var
   i: integer;
begin
    result:=true;  //si no hay números en la cadena retorna true
    for i:=1 to length(cadena) do begin  //contador i debe comenzar de 1
      if (cadena[i] in ['0'..'9']) then  //no se pone igual se pone in
      begin
        result:=false;
        exit;  //al primer número que encuentre sale con false
      end;
    end;
end;

Saludos.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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


La franja horaria es GMT +2. Ahora son las 16:30:43.


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