TextBox. Limitar el número de caracteres y evitar concatenar - Versión para impresión +- Comunidad Gambas-es (https://gambas-es.org) +-- Foro: Gambas (https://gambas-es.org/forum-3.html) +--- Foro: General (https://gambas-es.org/forum-4.html) +--- Tema: TextBox. Limitar el número de caracteres y evitar concatenar (/thread-1176.html) |
TextBox. Limitar el número de caracteres y evitar concatenar - Shell - 20-01-2023 Buenas!. Imaginar que necesitáis escribir una serie de valores en una caja de texto o un valuebox, tantas veces como quieran. Pero no quieren que al entrar el nuevo texto o valor se mezcle con el que ya existía en la caja de texto. ¿ No es algo que suele ocurrir ?. Hice un ejemplo sencillo, que al principio se me volvió complicado. ¿ Qué pasaría si quisieras escribir un nuevo número ?. ( Aunque sea un textbox ). Tendrías que borrar uno a uno, o seleccionar todo el contenido y borrarlo y luego escribir el nuevo número. En principio he puesto un máximo de tres dígitos. La verdadera idea sería que se pueda escribir cualquier cosa sin que ocurra lo de arriba. Pero por ahora solo lo hice con tres caracteres o tres dígitos. Código: Const DIGITOSMAXIMOS As Integer = 3 ¿ Es posible usar un evento más y solucionarlo de otra forma ?. Keyrelease o Change, quizás eso lo complique más. Saludos RE: TextBox. Limitar el número de caracteres y evitar concatenar - Shell - 20-01-2023 Y por qué no le añadí esto al principio ?. Código: Public Sub txbDigitos_KeyPress() A veces no entiendo por que me complico tanto y no planteo mejor la solución. No es algo sencillo. En realidad este ejemplo salió de otro que tengo que revisar y mostrar. Como es lógico la caja de texto siempre va a tener el foco. Creo que no tenemos un videotutorial o tutorial que explique bien esos eventos tan importantes que usamos y a veces nos liamos como es el KeyPress, KeyRelease, Change. Si, sabemos que KeyPress, es cuando presionamos la tecla. El KeyRelease cuando la tecla es liberada o levantada. Y el Change, cuando cambia el contenido. Pero eso es lo fácil, aplicarlo es otra cosa. He aplicado los dos primeros siempre al control de movimiento de un personaje, bloque que lleva el jugador. Ejemplo, la raqueta del Pong. Disculpar la tontería del ejemplo que con algo de tiempo y más pensarlo se soluciona. El problema es el tiempo que te llevas para una tontería. A veces es frustrante. RE: TextBox. Limitar el número de caracteres y evitar concatenar - Shordi - 20-01-2023 No entiendo muy bien. ¿Quieres mantener esos tres (o los que sea) números teclee el usuario lo que teclee o quieres que se borren de golpe si el usuario borra o qué? Saludos RE: TextBox. Limitar el número de caracteres y evitar concatenar - Shell - 20-01-2023 (20-01-2023, 11:38)Shordi escribió: No entiendo muy bien. ¿Quieres mantener esos tres (o los que sea) números teclee el usuario lo que teclee o quieres que se borren de golpe si el usuario borra o qué? Perdona Shordi, pero se me fue la mente. La idea es hacer una operación constantemente. Insertar un dato, un número por ejemplo, se elimina y se puede escribir otro, pero que no se mezcle con el anterior que esta en la caja de texto. Ya ves que era sencillo. Esto comenzó con una hoja de cálculo que tengo que utilizar la función "Solver", el ejercicio usa aún la peseta, entonce me puse a crear un ejemplo en Gambas que me hiciera la conversión. ( Cosa que se puede hacer en Calc, en otra hoja ). Y de este ejemplo salió este. Como ves, la idea era insertar un valor en pesetas, convertirlo a euros y así hasta terminar todos los valores a convertir. Ejemplo que a lo mejor tengo que cambiar. Es sencillo. Como lo vi parecido, hice el de la caja de texto. A veces se obsesiona uno con hacer las cosas de la manera más complicada, o que tiene interés de hacerlo de una forma distinta, cuando no funciona a la primera, puedes pensar y si uso otro evento que dispone el componente. |