Sección de códigos , trucos y ejemplos para visual basic


276 - Limitar la cantidad de caracteres a introducir en un control ComboBox

<Volver> - Anterior - Siguiente



 

Ejemplo aportado por Juan Awazx.

 

En algunas ocasiones resulta interesante disponer de la capacidad de limitar la cantidad de caracteres que un usuario puede introducir en un control ComboBox o ListBox. Aunque hay varias maneras de conseguirlo, en este ejemplo lo conseguimos con cinco líneas de código.


Primer paso:

Haga doble clic en el control ComboBox o ListBox. Por defecto y dentro del editor de código, Visual Basic lo situará en su propiedad Change. En nuestro ejemplo usamos un control ComboBox llamado ‘ComAño’.

Segundo paso:

Declare una variable dentro de esta subrutina encargada de acoger el valor textual que recibe el control ComboBox cada vez que el usuario pulsa una tecla. En nuestro ejemplo, tal variable recibe el nombre “Cadena”.

Dim Cadena As String

Tercer paso:

Cree una función de tipo condicional que sea capaz de leer en tiempo real la cantidad de caracteres introducidos. Si ésta cantidad es mayor de los caracteres que usted desea como límite, use la función Left() para asignar a la variable Cadena sólo la cantidad de caracteres deseados. En nuestro ejemplo, sólo se permiten los 4 primeros caracteres.

If Len(Me.ComAño.Text) > 4 Then
Cadena = Left(Me.ComAño, 4)

Cuarto paso:

Dentro del mismo espacio condicional, asigne a la propiedad Text del control ComboBox el resultado de la variable ‘Cadena’.

Me.ComAño.Text = Cadena

Quinto paso:

Para que el cursor permanezca al final de la línea de texto y evitar que regrese al inicio, emplee la función SelStart del control ComboBox. El valor de SelStart debe ser igual a la cantidad de carateres actuales del control y definidos por la variable ‘Cadena’.

Me.ComAño.SelStart = Len(Cadena)


Y el espacio condicional queda cerrado. Ya está.

End If

 

Aquí puede ver el código completo (recuerde que en nuestro ejemplo llamamos al control ComboBox ComAño

 



Buscar en Recursos vb