CONTENIDOS


CONTROL TextBox

El control TextBox o Caja de texto se utiliza para Ingresar y/o visualizar Texto ( es un control de entrada de datos )

Vista previa de un control TextBox de Visual Basic

Si en nuestros programas no vamos a introducir Texto, me refiero a solo mostrarlo, valores etc..., es preferible y mas lógico utilizar un control Label en cambio de un control TextBox , ya que consume menos recursos
La propiedad principal de este control se llama Text. Mediante ella podemos asignarle un texto ya sea en tiempo de diseño o tiempo de ejecución al control. Si es en tiempo de diseño, debemos seleccionar el TextBox e ir a la ventana de propiedades y seleccionar Text. Dentro de ella podemos escribir el texto a ser mostrado. Si es en tiempo de ejecución debemos escribir el nombre de el TextBox que queremos y al presionar el punto ".", vb despliega la lista de propiedades y métodos del TextBox, y ahí seleccionamos Text

Lista de propiedades y métodos del control Textbox

Por ejemplo si quiero mostrar un texto en un control llamado Text1 se haría de esta forma:

Private Sub Form_Load()

Text1.Text = "Un texto cualquiera"

End Sub

Si quisiera mostrar el contenido de un control Label llamado Label1 en un control llamado text1 se haría así:

Private Sub Form_Load()

Text1.Text = Label1.Caption

End Sub
Nota , no es necesario escribir la propiedad Text seguida del nombre del control, ya que la propiedad Text es la propiedad por defecto, y Vb se daría automáticamente cuenta que al no poner ninguna propiedad la asuma como tal, por ejemplo esto es válido:
Private Sub Form_Load()

Text1 = "Un texto cualquiera"

End Sub

Esto de las propiedades por defecto lo tienen la mayoría de los controles, pero cada control tiene la suya, por ejemplo la propiedad default de un control Label es Caption, por lo que no es necesario escribirla, y Visual Basic no daría error:

Private Sub Form_Load()

Label1 = "Hola"

End Sub

Para un control Picture, la propiedad Picture es la que está establecida por defecto, y esto tampoco daría error y cargaría una imagen perfectamente en el control sin indicar explícitamente la propiedad.

Private Sub Form_Load()

Picture1 = LoadPicture("la ruta de una imagen")

End Sub

 

Propiedades del TextBox

Propiedad Multiline

La propiedad Multiline o multilinea se utiliza para poder mostrar los saltos de carro o saltos de línea y que el texto se vea en varias y no todo en un única línea. Los valores que posee son True que está activada y en False quiere decir que está deshabilitada. Por defecto cuando añadimos un TextBox, la propiedad está en False, osea que tenemos que indicarle nosotros a vb, ya sea desde la ventana de propiedades poniéndola en true. Una cosa importante es que esto no lo podemos cambiar en tiempo de ejecución mediante código, si o si hay que establecerla desde la ventana de propiedades, ya que es una propiedad de solo lectura.

Propiedad PasswordChar

Esta propiedad tiene la función de ocultar el verdadero contenido del TextBox por el caracter que le indiquemos, por ejemplo los TextBox de ingresos de contraseña, donde el texto se oculta pero no se pierde, solo impide visualizarlo:

Propiedad passwordchar para ocultar el texto del control Texttbox

Nota : para establecer el caracter a mostrar solo debemos indicarlo en la propiedad PasswordChar, pero solo funciona cuando la propiedad Multiline del Text está en False.

Propiedad ScrollBars

Esta propiedad permite que el TextBox tenga o no tenga barras de Scroll cuando el texto sea superior a las dimensiones de la caja de texto. Los valores que puede tener son: 0 indica que el textBox no mostrará Barras de desplazamiento, en 1 Solo barra Horizontal, 2 Solo barra Vertical y 3 ambas barras de desplazamiento. En esta imagen se ve un TextBox con la propiedad Scrollbars en 2, solo Vertical

Propiedad Scrollbar - Barras de desplazamiento para los controles de texto

Propiedad Locked

Esta propiedad lo que hace es impedir que se pueda escribir en el TextBox, bloqueando la entrada de datos. Esta propiedad puede tener el Valor True o False, habilitado para el primero y False para el segundo. Por defecto está deshabilitada, es decir en False

 

Propiedad Maxlength

La propiedad MaxLength se usa para limitar la cantidad de caracteres que se podrán ingresar. Por ejemplo si en el TextBox tuviesemos el texto "Domingo" y hacemos esto:
Private Sub Command4_Click()
Text1.Text = "Domingo"
Text1.MaxLength = 3
End Sub
El texto "Domingo" se podrá visualizar pero si intentamos escribir en la caja de texto, no se podrá ingresar mas de 3 caracteres. Es decir la propiedad recibe un número que identifica la longitud máxima permitida de letras a ingresar.

Propiedad SelStart y SelLength

La primera lo que hace es devolver o establecee el punto inicial del texto seleccionado. en cambio SelLength devuelve o establece el número de caracteres seleccionados.
El siguiente ejemplo utiliza estas dos propiedades, en conjunto con la propiedad Len de visual basic, para que al persionar la tecla Ctrl+A, se seleccione todo el contenido del TextBox

vista del ejemplo para seleccionar todo el etxto al presionar la tecla control mas la tecla A

Private Sub Text1_KeyPress(KeyAscii As Integer)

    If KeyAscii = 1 Then
           Text1.SelStart = 0
           'Selecciona Todo el contenido de la caja de texto
           Text1.SelLength = Len(Text1.Text)
    End If
End Sub 



Algunos ejemplos del Uso del control TextBox

Supongamos que quisieramos mostrar el contenido de un Text1 en un Text2, cuando presionamos un Command1, haríamos asi:
Vista previa del ejemplo para copiar el contenido de un textbox en otro TextBox

Private Sub Command1_Click()
'Copiamos el texto de Text1 en el Text2
Text2 = Text1
End Sub

Si quisieramos cambiar el color de fondo (propiedad Backcolor) del TextBox para que sea igual al color de fondo del formulario haríamos asi:

Vista del ejemplo para cambiar el color de fondo de un textbox

Private Sub Command1_Click()
'Le asignamos el mismo color al textbox que el que tiene el formulario _
utilizando la propiedad Backcolor

Text1.BackColor = Me.BackColor
End Sub

Este simple ejemplo lo que hace es cuando se escribe en el Text1, automáticamente se imprime el mismo texto en un Text2. Para esto usamos el evento Change que significa cambio, es decir se ejecutará cada vez que el text1 cambie el contenido.
Agregar 2 Text, text1 y Text2, pegar lo siguiente y luego escribir un texto en el Text1.

Private Sub Text1_Change()
'Le establecemos el contenido de Text1 en el control Text2
Text2 = Text1
End Sub

Este ejemplo lo que hace es cambiarle el color al fondo del control text en negro, el color de la fuente en verde, el tamaño de la fuente, establecerla en negrita, y luego le asigna un texto "hola mundo".
Colocar un Command1 y un Text1


Private Sub Command1_Click()
With Text1

.ForeColor = vbGreen
.BackColor = vbBlack
.FontSize = 12
.FontBold = True
.Text = " Hola Mundo"

End With
End Sub


No hay comentarios:

Publicar un comentario