![]() |
Validar Ingreso De Letras En Un Edit
Código Delphi [-]
unit valletra; interface uses Classes, DBTables, QControls, SysUtils,Windows, Messages, Variants,Graphics, Controls, Forms, Dialogs, StdCtrls; Type Tvalletra= class(TWidgetControl) private letr: String; public property letra: String read letr write letr; procedure validarn(letra: String); end; implementation procedure TValletra.validarn(letra:String); var i: integer; var b: String; begin letr:=Letra; for i:=1 to length(letra) do begin if ((letra[i] in ['a'..'z'])and (letra[i] in ['A'..'Z'])) then b:='Verdadero' else b:='Falso'; end; showmessage(''+b+''); end; end. Buen dia. En el codigo que les adjunto estoy intentando de elaborar una clase que me valide si le ingreso letras el valor de b (tipo String) retorne verdadero, de lo contrario b sea falso, recorriendo cada letra por medio de un ciclo. El problema que tengo es haciendo pruebas de que valor me retorna b, siempre me retorna Falso, ya sea si el ingreso letras o no, quisiera por favor si me pueden ayudar que error tengo, o que correcciones me sugieren con respecto a esa clase. Mil Gracias Sergio |
Porque si ingreso 'a' por ejemplo, te dara verdadero and falso = falso.
Es decir, estas preguntando si 'a' se encuentra el el grupo de la 'a..z' y si además se encuentra en el grupo de 'A..Z', obviamente no puede estar en ambos por eso te da falso. Solución: cambiar and por or. |
Fijate algo asi, como para no deformar mucho lo que haz hecho tu
y un ejemplo de llamada
Ojo con las funciones lógicas, debes aplicarlas utilizando lógica simbólica y cálculo proposicional Saludos |
Otra Duda
No me habia fijado en eso, mil gracias por su aclaracion, ya hice esas correcciones.
Tengo otra duda, por ejemplo si yo ingreso 8u o ?5f, se supone que me deberia que botar falso, ya que en ninguno de los casos me tiene que admitir que me ingrese otra caracter diferente de la a la Z, no se si toque que hacer otra correcion de esa clase, o si hay otra manera de plantearla la tendre en cuenta, soy nuevo en delphi. Agradezco toda la ayuda que me pueda prestar con respecto a eso. gRACIAS |
No entiendo muy bien el punto. Lo que quieres hacer es un Edit que solo admita letras y no numeros?
Porque de ser asi, podrías usar esto en el evento OnKeyPress del Edit
No tengo Delphi a mano, pero quedaria algo asi Saludos |
Respuesta
Lo que quiero hacer es que solo me admita ingresar letras en el edit, no combinaciones por ejemplo de letras con numeros ó letras con caracteres distintos solo letras .
|
Cita:
Saludos |
Respuesta
Mil Gracias Uan Vez Mas, Intentar Este Codigo, Cualquier Cosa Le Aviso.
Gracias |
solo queria mencionar que la JVCL tiene un componente que realiza lo que tu necesitas.. tanto para numero como letras
Paleta Jv Edits Componente TJvValidadeEdit y TJvEdit Salu2 |
Jv
Una Pregunta, Este Componente Del Que Habla Ya Se Encuentra En Delphi O Toca Descargarlo, Si Se Encuentra Por Favor Digame En Donde Y Si Toca Descargarlo Por Favor Indiqueme Todo Para Poderlo Descargar.
Mil Gracias Una Vez Mas A Usted Y A Todos. Dios Los Bendiga |
Codigo Final Clase
Compañeros del foro, quiero mostrarles el codigo de la clase que les comente, ya me funciona, de todos modos una vez mas mil gracias a todos y que Dios los proteja a ustedes por su paciencia, mil gracias.
|
La franja horaria es GMT +2. Ahora son las 04:57:55. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi