Discusiones sobre Productos NI

cancelar
Mostrando los resultados de 
Buscar en lugar de 
Quiere decir: 

como permitir que un control string solo deje escribir letras

¡Resuelto!
Ir a solución

Hola a todos, esta vez quiciera saber como puedo permitir que un control string solo me deje escribir letras y no numeros..

0 kudos
Mensaje 1 de 5
7.453 Vistas
Solución
Aceptado por el autor del tema Boss90

Hola 

 

No existe o al menos no conosco algo que de inmediato te bloquee el que alguien escriba un numero, pero se puede programar, asi como lo hice en el archivo adjunto. 

 

saludos 

Felipe RC
Field Applications Engineer
National Instruments para Chile, Argentina, Perú, Bolivia, Paraguay y Uruguay




(Si mi respuesta te ayudo dale click a la estrella para el Kudos)
Mensaje 2 de 5
7.439 Vistas

Gracias!!.. FelipeRC_Chile, te debo una!!

0 kudos
Mensaje 3 de 5
7.435 Vistas

La forma en que lo hace FelipeRC_Chile, NO es la mejor forma de hacerlo, de hecho no se esta verificando que realmente sean números, ( aunque a primera vista asi paresca )  esto debido a que al configurar el Case Structure con un rango de caracteres ( "0".."9" ) . Realmente  lo que se esta haciendo en configurar para que acepte cualquier string que comienza por los caracteres del 0 al 8 (sin contar el 9, por esto es que se necesito configurar otro estado solo con el 9), así que por ejemplo si en el string queda un numero entre caracteres no va a funcionar "jjjjjj1j" por ejemplo, esto es una especie de Condición de carrera donde el resultado (si se dijito numero o no ) dependerá de que tan rápido se actualicen los datos en el string , esto se puede evidenciar ingresando un "Wait ms" en el programa  de un valor grande y actualizando el string rápidamente con números y letras, si el case structure se activo justo cuando estaba evaluando el string tipo numero o cuando el numero quedo al final o al principio de todo el string el programa va a funcionar, pero si un string tipo numero, queda entre caracteres tipo letra el programa ya no va a funcionar. ( Ver imagen ). 

 

string control sin numeros (1).png

 

Asi que una solucion sencilla seria trabajar con los valores Ascil de los caracteres numericos ( del 48 al 57 ) evaluandalos para saber si se ingresaron caracteres numericos o no al string.

 

Rango Strings.png

 



Ing. Jonathan E. Cruz Ortiz

ENERGÍA PROACTIVA S.A.S

Cel : (+57) 3173669343 - (+57) 3124451894

Mensaje 4 de 5
7.412 Vistas

En las dos maneras anteriores que comentaron y mas en la de  Jokelnice lo que hacen es borrar los caracteres que ingreses por ejemplo si colocas (jorge3Alberto = jorge ) entonces borrar todo los caracteres.

Una forma mejor de hacer y mas sencillo donde ahorras recurso es este: En donde utilizamos la herramienta de string "Search and replace String" el cual busca dentro de un string un carácter especifico y lo remplaza, en este caso por nada, Asi que cuando ingreses por ejemplo: (Jorge4823Alberto = JorgeAlberto) Captura.JPG

 

 

 

0 kudos
Mensaje 5 de 5
4.652 Vistas