Comunidad Gambas-es

Versión completa: Control Maskbox. ¿ Cómo fija la longitud del texto ?
Actualmente estas viendo una versión simplificada de nuestro contenido. Ver la versión completa con el formato correcto.
Buenas!.

Cuando escribimos en una caja de texto y queremos cambiar de nuevo su contenido totalmente. Debemos obligatoriamente
hacer unas operaciones para logar ese cometido. Ya sea colocarnos al principio del texto, seleccionar el texto, borrarlo.

Esto es algo hipotético ya que no sabemos de antemano saber cuando va a medir nuestro texto dentro de una caja de texto.
Por ejemplo que nuestra caja de texto solo admita cuatro caracteres y si continuamos escribiendo, se limpia la caja y
comienza de nuevo con la última tecla pulsada.

GAMBAS
  1. Public Sub TextBox1_KeyRelease()
  2.     
  3.   If TextBox1.Text.Len > 4 Then
  4.     TextBox1.Clear
  5.     TextBox1.Text &= Key.Text
  6.  



En el control Maskbox limita el número pero la operación de borrado y comenzar de nuevo es igual.
¿ Quién fija la máxima longitud de la caja de texto del control MaskBox ?.
¿ Su propiedad "maxlength ?. Aparentemente no..

Es que quería hacer trampas en esta parte... Tongue

GAMBAS
  1. Public Sub Form_Open()
  2.  
  3.   Me.Title = "Cajas de texto"
  4.   TextBox1.Font = Font["Arial, 48"]
  5.  
  6.   MaskBox1.Font = Font["Arial, 48"]
  7.   MaskBox1.Mask = "AAAA"
  8.  
  9.   'Pruebo a cambiar esta propiedad
  10.   MaskBox1.MaxLength = Len(MaskBox1.mask) + 1
  11.  
  12.  
  13. Public Sub TextBox1_KeyRelease()
  14.     
  15.   If TextBox1.Text.Len > 4 Then
  16.     TextBox1.Clear
  17.     TextBox1.Text &= Key.Text
  18.  
  19.  
  20. Public Sub MaskBox1_KeyRelease()
  21.  
  22.   If MaskBox1.Text.Len > 4 Then
  23.     MaskBox1.Clear
  24.     MaskBox1.Text &= Key.Text
  25.  



Pero se quedó igual.

Puede que en algún momento esa opción fuera útil pero rara de ver. Rolleyes

Saludos