LIMITADOR DE CARACTERES

Publicado por nonoroman, Abril 30, 2019, 02:30:49 PM

Tema anterior - Siguiente tema

0 Miembros y 1 Visitante están viendo este tema.

nonoroman

Buenas familia, otra vez estoy por aqui.

Tengo la siguiente duda;

Quiero limitar los digitos al introducir un nombre, por ejemplo a 8 digitos.

El string_length(str); cuenta el numero de digitos del str, ok, pero mi pregunta es....como puedo recortar ese str??? para que solo sean 8 digitos?? en el caso que los supere??

Saludos, y espero ayuda, please.


FridaFlowers

Te comparto un script que hice hace poco para un tutorial de UDP. Este sirve para recibir teclas, osea, algo asi como escribir en Word.
Te permite borrar con backspace, o eliminar todo con suprimir. Lo tenía para ingresar direcciones IP, por lo que tendrías que completarlo para todas las letras del alfabeto.


[gml]
if (puede_escribir){
    var ultimo = string_length(contenido);
   
    if (keyboard_lastkey == vk_delete) //elimiar toda la cadena con suprimir
        contenido = "";
       
    if (keyboard_lastkey == vk_backspace) //elimiar el ultimo caracter
        contenido = string_copy(contenido, 0, ultimo-1);
       
    var caracter = keyboard_lastchar;
   
    switch(caracter){
        case "a":
        case "b":
        case "c":
        case "d":
        case "e":
        case "f":
        case "g":
        case "h":
        case "i":
        //rellenar hasta la z  XD
       case "z":
           
            if (ultimo < 8) //agregar solo cuando no exceda los 8 caracteres
                contenido = string_insert(caracter,  contenido, ultimo+1);

        break;
    }
}

if (keyboard_lastkey == vk_enter)
    global.cadena = contenido;


[/gml]

nonoroman

Gracias Frida

Pero creo que eso no es lo que necesito. O no te entendi bien.

Sorry.

3dgeminis

En 2 lineas de codigo lo tienes:
[gml]
nombre=string_copy(keyboard_string, 0, 8)
keyboard_string=nombre
[/gml]

nonoroman

Muchas gracias, es algo simple, pero que nunca habia realizado. Gracias 3dgeminis

0m@R

Cita de: FridaFlowers en Abril 30, 2019, 04:26:53 PM
Te comparto un script que hice hace poco para un tutorial de UDP. Este sirve para recibir teclas, osea, algo asi como escribir en Word.
Te permite borrar con backspace, o eliminar todo con suprimir. Lo tenía para ingresar direcciones IP, por lo que tendrías que completarlo para todas las letras del alfabeto.

[gml]
if (puede_escribir){
    var ultimo = string_length(contenido);
    ...
[/gml]

Buen código Frida antes también lo hacía así, pero recomiendo que cambies el extenso switch por algo mas o menos así:

[gml]
if ultimo < 8 { // agregar solo cuando no exceda los 8 caracteres
        if string_count(caracter, "abcdefg...ABCDEF...1234...$%&...etc") != 0 { // se puede modificar str mascara de caracteres permitidos
                contenido = string_insert(caracter,  contenido, ultimo+1);
        }
}
[/gml]

101 Visitantes, 0 Usuarios