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 24-07-2013
alquimista alquimista is offline
Miembro
 
Registrado: ene 2008
Posts: 203
Poder: 17
alquimista Va por buen camino
TEdit primer digito no sea número

Muy buenas...

¿Cual seria el mejor sitio (evento o método) para comprobar que el primer dígito de un Tedit no sea un número?
He puesto en el keypress que solo sean caractereres alfanumericos.

Código Delphi [-]
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
If not (Key in ['A'..'Z','a'..'z','0'..'9','e','E','.','-','+','_',#8]) then Key:=#0;
end;
Responder Con Cita
  #2  
Antiguo 24-07-2013
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.040
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Quizás te convenga mejor usar una máscara, un TEditMask
Porque de esa manera tienes que comprobar que es el primer dígito y sería más fácil hacerlo en el onexit o en el onchange del edit.
Por eso, mejor, cambia el tedit por un teditmask.
Responder Con Cita
  #3  
Antiguo 24-07-2013
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola alquimista.


Código Delphi [-]
procedure TForm1.EditKeyPress(Sender: TObject; var Key: Char);
begin
  with Sender as TEdit do
    ReadOnly := (SelStart + SelLength = 0) and (Key in ['0'..'9']);
end;


Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #4  
Antiguo 25-07-2013
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.040
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
No se me habría ocurrido hacerlo así
Es más, ¿eso funciona?
Responder Con Cita
  #5  
Antiguo 25-07-2013
alquimista alquimista is offline
Miembro
 
Registrado: ene 2008
Posts: 203
Poder: 17
alquimista Va por buen camino
Y le añado lo primero que puse???

Y si quiero limitarlo a un número determinado de caracteres???
vale con poner: or (SelStart + SelLength >x) ??

Código Delphi [-]
procedure TForm1.EditKeyPress(Sender: TObject; var Key: Char);
begin
  with Sender as TEdit do
    ReadOnly := (SelStart + SelLength = 0) and (Key in ['0'..'9']) OR ((SelStart + SelLength >longitud);
end;

PD: Me parece impresionante...

Gracias..

Última edición por alquimista fecha: 25-07-2013 a las 00:18:06.
Responder Con Cita
  #6  
Antiguo 25-07-2013
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.040
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Cita:
Empezado por alquimista Ver Mensaje
Y le añado lo primero que puse???
No
.
Responder Con Cita
  #7  
Antiguo 25-07-2013
alquimista alquimista is offline
Miembro
 
Registrado: ene 2008
Posts: 203
Poder: 17
alquimista Va por buen camino
Es que si no no me deja borrar caracteres.

En realidad solo quiero este juego de caracteres y que el primero sea letra o _ y limitado a 32 caracteres (numeros o letras o _ solo)
if not (Key in ['A'..'Z','a'..'z','0'..'9','_',#8]) then Key:=#0;
Pero lo pongo detras de lo de ecfisa.

PD:Lo de limitarlo no me va ya que al rebasar la longitud no me deja ni borrar.

Sorry: lo de la longitud se hace con la propiedad MAxLength

Última edición por alquimista fecha: 25-07-2013 a las 00:31:16.
Responder Con Cita
  #8  
Antiguo 25-07-2013
Avatar de oscarac
[oscarac] oscarac is offline
Miembro Premium
 
Registrado: sep 2006
Ubicación: Lima - Perú
Posts: 2.010
Poder: 20
oscarac Va por buen camino
Cita:
Empezado por Casimiro Notevi Ver Mensaje
No se me habría ocurrido hacerlo así
Es más, ¿eso funciona?
si funciona, lo curioso es que en ninguna literatura encontre esas propiedades
__________________
Dulce Regalo que Satanas manda para mi.....
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
Obtener determinado dígito de un número xneox Varios 10 07-10-2012 01:43:22
Determinar digito mayor de un numero luisito2011 Varios 6 25-04-2011 22:17:54
sumar cada digito de un numero entero emenchi34 Varios 9 19-09-2006 23:02:35
Extraer primer digito en minusculas ? Coco_jac SQL 4 21-12-2005 16:13:01
Consultas en Acces por el primer digito jdattoli Tablas planas 2 17-11-2005 18:04:11


La franja horaria es GMT +2. Ahora son las 18:27:46.


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