Sie sind auf Seite 1von 35

Label

Es una etiqueta y sus principales propiedades son:

Name: Indica el nombre del componente. Text: Indica el texto que se visualiza en la etiqueta.

Ejemplos
Utiliza en un formulario de tu aplicacin de ejemplo el elemento Label.

Definicin de variables
Una variable es una posicin de memoria de un determinado tipo que almacena informacin de su tipo correspondiente. A dicha posicin de memoria se accede a travs del nombre de la variable. Para definir variables se utiliza se realiza de la siguiente forma:

Dim n As Integer para definir una variable n de tipo entero. Dim n As Double para definir una variable n de tipo real Dim n As String para definir una variabe n de tipo cadena de texto.

Nombres de las variables


Los nombres de las variables deben empezar por una letra y a continuacin pueden ir letras o nmeros. Visual Basic .NET no hace distincin entre maysculas y minsculas. Una palabra no puede ser una palabra reservada del lenguaje Visual Basic .NET. Se pueden definir varias variables del mismo tipo en una solo lnea. Ejemplo: Dim n1, n2, n3 As Integer n3=n1+n2 Se suma el contenido de las variables n1 y n2 y se guarda el resultado en la variable n3.

Entrada y salida de informacin


Aprenderemos a utilizar dos instrucciones mediante las cuales la aplicacin muestra mensajes por pantalla o hace que el usuario del programa pueda introducir valores. Los comandos a los que nos referimos son MSGBOX e INPUTBOX, respectivamente.

Msgbox
La instruccin MSGBOX permite mostrar en pantalla el contenido de un mensaje indicado por el programador.

Un ejemplo de lnea de cdigo con este comando sera el siguiente: MSGBOX BUENOS DIAS

Inputbox
Al igual que MSGBOX, la instruccin INPUTBOX muestra una ventana en pantalla. La diferencia reside en que la ventana en cuestin servir para pedirle al usuario del programa la introduccin de un valor. Un ejemplo de lnea de cdigo que utilice este comando sera el siguiente: n=INPUTBOX(Introduce un valor del 1 al 10)

InputBox
Al igual que MSGBOX, la instruccin INPUTBOX muestra una ventana en pantalla. La diferencia reside en que la ventana en cuestin servir para pedirle al usuario del programa la introduccin de un valor. Un ejemplo de lnea de cdigo que utilice este comando sera el siguiente:

Ejemplos
n=INPUTBOX(Introduce un valor del 1 al 10)

Programacin orientada a eventos


Visual Basic es un entorno de programacin orientado a eventos. Esto significa que podemos escribir cdigo de manera que este se ejecutar en cuanto se produzca una determinada accin o evento: clic sobre un botn, doble clic sobre un botn o sobre el fondo de un formulario, carga inicial de un formulario, descarga de un formulario, etc. Cada control que utilizamos en Visual Basic (botn, caja de texto, checkbox, etc.) tiene asociado una serie de eventos, los cuales no siempre sern los mismos para todos los controles. La forma de insertar cdigo a un determinado evento de un control consistir en, desde el editor de cdigo de ese control, seleccionar en la parte superior derecha del mismo el nuevo evento y, a continuacin, escribir el cdigo del programa correspondiente. El evento clic sobre un botn es uno de los ms importantes, en este Apartado nos limitaremos a comentar la utilidad y funcionamiento de dos de ellos, asociados al objeto formulario: LOAD y CLOSED.

Tratamiento de bases de datos SQL Server


El tratamiento de base de datos SQL Server es muy similar al utilizado en Access lo nico que hay que utilizar otros componentes para SQL Server. Estos componentes se encuentran en el cuadro de herramientas en el apartado Datos y son:

SqlConnection: Habra que definir la propiedad ConnectionString utilizando el asistente para crear una conexin nueva y eligiendo como proveedor el Microsoft OLE DB Provider for SQL Server y seleccionando el nombre del servidor SQL Server, y la base de datos deseada con las opciones de seguridad adecuadas. Al final podemos probar la conexin y pulsar el botn Aceptar.

Realizacin de consultas mediante el lenguaje SQL en SQL Server


A continuacin mostraremos el cdigo necesario para lanzar una consulta en SQL Server que elimine el registro deseado de la tabla Alumnos: Private Sub btnEliminar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEliminar.Click Dim cmd As New SqlClient.SqlCommand SqlConnection1.Open() cmd.Connection = SqlConnection1 'El delete sin el * porque sino en el SQL SERVER no funciona cmd.CommandText = "delete from Alumnos where IdAlumno=" & Val(txtID.Text) cmd.CommandType = CommandType.Text

cmd.ExecuteReader() MsgBox("Se ha eliminado el registro") SqlConnection1.Close() End Sub

Ejemplos
Realiza diversas consultas en tu aplicacin que se conecte a una base de datos en SQL Server.

SqlDataAdapter: Seguimos el asistente y lo vinculamos a la conexin a la base de datos que hemos creado anteriormente. Le damos a siguiente y elegimos la opcin por defecto Usar instrucciones SQL. Generamos una consulta SELECT con lo que queremos visualizar. Se generan las instrucciones SELECT, INSERT, UPDATE y DELETE. DataSet: Creamos un conjunto de datos con tipo (DataSet11) y generamos los datos para este dataset11 en las opciones del men Datos-> Generar conjunto de datos y lo asociamos con el SqlDataAdapter1 creado anteriormente SqlCommand: Es el que nos permite la ejecucin de consultas en lenguaje SQL utilizando el modo conectado (Dim cmd As New SqlClient.SqlCommand) y rellenando las propiedades: Connection, CommandText (con la consulta adecuada), CommandType y ejecutando la consulta con el mtodo ExecuteReader().

Ejemplos
Realiza una aplicacin que se conecte a una base de datos en SQL Server.

Cuestionario bsico
UNAS PREGUNTAS TIPO TEST !!!

1) Cmo se definen las variables?


Con Dim. Con MsgBox. Con InputBox.

2) Qu instruccin muestra por pantalla el contenido de un mensaje?


If . MsgBox .

For .

3) Cul de las siguientes instrucciones es un bucle?


If . Else . For .

4) Cul es el evento que se activa justo antes de mostrase en pantalla un formulario?.


LOAD . CLOSED . CLICK .

5) Una Label es una....


Es una casilla de verificacin. Es una etiqueta . Es un cuadro de texto .

Cuestionario avanzado
MAS PREGUNTAS TIPO TEST !!!

1) Para trabajar con los datos de una tabla se utiliza...


MainMenu . DataGrid. ComboBox.

2) Con bases de datos Access se utiliza...


OleDbConnection. SqlConnection .

AccessConnection .

3) Con bases de datos SQL Server se utiliza...


OleDbConnection. SqlServerConnection . SqlConnection .

4) Donde va el cdigo SQL de la consulta?.


cmd.Connection. cmd.CommandText. cmd.CommandType.

5) Con bases de datos SQL Server se utiliza...


OleDbCommand. ServerCommand.. SqlCommand.

Activividades bsicas
AQU LAS TIENES!!! 1. Cmo definiras lo que es un proyecto de Visual Basic?

2.

Acabas de realizar un proyecto en Visual Basic constituido por dos formularios. A la hora de guardarlo, cuntos archivos debers conservar?

3.

Qu es un evento? Define este trmino con tus propias palabras y pon un ejemplo.

4.

Qu son y para que sirven las propiedades de un objeto? Ilustra tu explicacin con un ejemplo.

5.

Para qu sirve la instruccin MSGBOX? Pon un ejemplo.

6.

Para qu sirve la instruccin INPUTBOX? Apyate en un ejemplo para definir el trmino.

7.

Para qu sirve la instruccin DIM? Pon un ejemplo.

8.

Para qu sirve la instruccin IF? Explcalo con tus propias palabras e incluye un ejemplo.

9.

Para qu sirve la instruccin ELSE? Pon un ejemplo.

10. Para qu sirve la instruccin FOR? Apyate en un ejemplo para definir el trmino.

11. Para qu sirve la instruccin WHILE? Pon un ejemplo.

12. En qu consiste un evento LOAD de un formulario? En qu casos sera conveniente escribir, en este lugar, cdigo Visual Basic?

Activividades avanzadas
AQU LAS TIENES!!! 1. Qu es VBA? Define el trmino e incluye un ejemplo ilustrativo.

2.

Qu es y para que se puede utilizar VBScript?

3.

Qu utilidad tiene el apartado Declaraciones/General de un formulario?

4.

Utiliza la ayuda de Visual Basic para obtener informacin acerca de las instrucciones FOR y WHILE, las cuales posibilitan la creacin de bucles. Una vez estudiado su funcionamiento, haz un clic sobre el enlace que permite acceder a un ejemplo de programa y prueba a copiarlos y pegarlos en un programa Visual Basic para comprobar el funcionamiento de estas dos instrucciones.

5.

Qu es y en qu casos sera conveniente usar et evento UNLOAD de un formulario?

6.

Qu instruccin utilizaras para finalizar un programa en Visual Basic?

7.

Qu opcin elegiras para poner en funcionamiento el editor de mens de Visual Basic?

8.

Qu opcin seleccionaras para agregar un nuevo formulario a un proyecto?

9.

En un proyecto constituido por ms de un formulario, cmo haras para, desde un formulario, llamar a otro formulario?

10. Para qu sirve y cmo configuraras el control DBGrid?

11. Qu es y para qu se puede utilizar una variable de tipo Database?

12. Especifica los pasos que seguiras para dar de alta nuevos registros en una tabla.

13. Explica, mediante un ejemplo, como borraras registros en una tabla mediante la sentencia DELETE de SQL.

14. Escribe el cdigo necesario que permita la modificacin de los registros de una tabla.

Control TextBox - Caja de texto


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

Si en nuestros programas no vamos a introducir Texto, me refiero a solo mostrarlo, valores etc..., es preferible y mas lgico 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 diseo o tiempo de ejecucin al control. Si es en tiempo de diseo, 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 ejecucin debemos escribir el nombre de el TextBox que queremos y al presionar el punto ".", vb despliega la lista de propiedades y mtodos del TextBox, y ah seleccionamos Text

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

Private Text1.Text End Sub =

Sub "Un texto

Form_Load() cualquiera"

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

Private Text1.Text End Sub

Sub =

Form_Load() Label1.Caption

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 dara automticamente cuenta que al no poner ninguna propiedad la asuma como tal, por ejemplo esto es vlido:

Private Text1 End Sub =

Sub "Un texto

Form_Load() cualquiera"

Esto de las propiedades por defecto lo tienen la mayora 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 dara error:

Private

Sub

Form_Load()

Label1 End Sub

"Hola"

Para un control Picture, la propiedad Picture es la que est establecida por defecto, y esto tampoco dara error y cargara una imagen perfectamente en el control sin indicar explcitamente la propiedad.

Private Picture1 End Sub =

Sub LoadPicture("la ruta de una

Form_Load() imagen")

Propiedad Multiline
La propiedad Multiline o multilinea se utiliza para poder mostrar los saltos de carro o saltos de lnea y que el texto se vea en varias y no todo en un nica lnea. Los valores que posee son True que est activada y en False quiere decir que est deshabilitada. Por defecto cuando aadimos un TextBox, la propiedad est en False, osea que tenemos que indicarle nosotros a vb, ya sea desde la ventana de propiedades ponindola en true. Una cosa importante es que esto no lo podemos cambiar en tiempo de ejecucin mediante cdigo, 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 funcin de ocultar el verdadero contenido del TextBox por el caracter que le indiquemos, por ejemplo los TextBox de ingresos de contrasea, donde el texto se oculta pero no se pierde, solo impide visualizarlo:

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 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 podrn ingresar. Por ejemplo si en el TextBox tuviesemos el texto "Domingo" y hacemos esto:

Private Text1.Text Text1.MaxLength End Sub

Sub = =

Command4_Click() "Domingo" 3

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 nmero que identifica la longitud mxima 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 nmero 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

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, haramos asi:

Private 'Copiamos Text2 End Sub

Sub el texto de = Text1 en

Command1_Click() el Text2 Text1

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

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, automticamente 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 'Le establecemos Text2 End Sub

el

Sub contenido

de =

Text1

en

el

Text1_Change() control Text2 Text1

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

Private With .ForeColor .BackColor .FontSize .FontBold .Text End End Sub

Sub = = = = = " Hola

Command1_Click() Text1 vbGreen vbBlack 12 True Mundo" With

Hacer que un textBox admita solo nmeros y algunos otros caracteres indicados

El siguiente ejemplo muestra como hacer , comprobando en el eventos KeyPress de un textbox, el valor del parmetro Keyascii, para que solo admita nmeros, la coma, el punto y la tecla de retroceso. Cualquier otro valor que no sea estos, el mismo retornar el valor 0.

Colocar un Text1 y el siguiente cdigo en el formulario:

Option Explicit Private Sub Text1_KeyPress(KeyAscii As Integer) KeyAscii = Verificar_Tecla(KeyAscii) End Sub Function Verificar_Tecla(Tecla_Presionada)

Dim Teclas As String

'Acepta todos los nmeros, la tecla Backspace, _ la tecla Enter, la coma y el punto Teclas = "1234567890.," & Chr(vbKeyBack) If InStr(1, Teclas, Chr(Tecla_Presionada)) Then Verificar_Tecla = Tecla_Presionada Else ' Si no es ninguna de las indicadas retorna 0 Verificar_Tecla = 0 End If

End Function

Esta funcin tambin puede ser utilizada en otros controles de entrada de datos, como por ejemplo los ComboBox, y la ventaja de utilizarlo, es que si tenemos muchos textbox o controles a los cuales deseamos verificar las teclas presionadas, no tenemos que escribir y repetir cdigo en todos ellos, solo asignando al valor KeyAscii el valor retornado por la fuincin, para que el mismo acepte o no dichas teclas Nota: tambin hay una funcin de visual basicllamada IsNumeric, para poder determinar si un valor es un nmero

Ejemplo para cargar el contenido de un archivo de texto en un TextBox Multiline

Este simple ejemplo carga en un control textBox el contenido de un archivo seleccionado de tipo txt. El control tiene la propiedad Multiline en True y la propiedad ScrollBar en Both. Nota: en este enlace hay una descripcin bsica de las funciones de visual basic para
el tratamiento de archivos, leer, guardar etc...

Colocar en un formulario un control Commondialog , un control textBox y un control Command1: Nota: al control textBox en la propiedadMultiline colocarle true y tambin establecerle los ScrollBar

Cdigo fuente en el formulario:

Private Sub Command1_Click() With CommonDialog1 .DialogTitle = " Seleccionar archivo" .Filter = "Archivos txt|*.txt" ' abre el cuadro de dilogo para seleccionar el txt .ShowOpen If .FileName = "" Then Exit Sub 'Carga el archivo en el control Cargar_Txt .FileName

End With End Sub Private Sub Form_Load() Command1.Caption = " Abrir archivo txt" End Sub Sub Cargar_Txt(path As String) Dim linea As String If path = vbNullString Then Exit Sub Text1 = "" Open path For Input As #1 While Not EOF(1) 'Lee la linea del archivo Line Input #1, linea 'La carga en el textbox Text1 = Text1 & linea Wend 'Cierra el archivo abierto Close End Sub

Redimensionar un TextBox al ancho y alto del formulario

Este ejemplo simple lo que hace es que al redimensionar el formulario, o maximizarlo, el ancho y alto del control text, se adapte al ancho y alto del la ventana. Para ello el cdigo debe estar ubicado en el evento Resize del formulario, y para redimensionar el textbox ( o cualquier otro control) se utiliza el mtodo Move Ejemplo:

Private Sub Form_Resize() 'Primer y segundo parmetro es el valor Left y Top 'Parmetro 3 y 4, el ancho y alto del text _ que en este caso es el ancho y alto del formulario Text1.Move 0, 0, Me.ScaleWidth, Me.ScaleHeight End Sub

Cambiar color de borde


El textbox no tiene ninguna propiedad para cambiar el color de borde . El siguiente ejemplo muestra una forma simple de como simular esto utilizando controles Shape, como muestra la siguiente imagen donde los textbox son parecidos a los de estilo de windows xp

En el ejemplo, se recorren todos los controles del formulario mediante un bucle For each. Luego, se van creando los dems controles Shape en tiempo de ejecucin, uno para cada textbox , usando el mtodo Load que permite crear los controles en tiempo de ejecucin a partir de uno que est agregado en el formulario formando un array de controles

Controles Colocar en el formulario, un control Shape. Al control Shape especificarle en la propiedad Index el valor 0 pra formar el array de shape Luego agregar algunos textbox en el formulario

Cdigo fuente en el formulario

' Posiciona el shape junto al textbox para simular el borde Sub Aplicar_Borde(Shape As Object, color_Borde As Long) ' Variable para recorrer todos los controles del formulario Dim el_Control As Object 'Recorre todos los controles For Each el_Control In Me ' .. si el control es un textbox If TypeOf el_Control Is TextBox Then Dim i As Integer 'Si el Textbox est dentro de un contenedor, _ como un frame o picturebox, coloca el Shape _ dentro del mismo contenedor Set Shape(i).Container = el_Control.Container 'Propiedades para el shape Shape(i).BackStyle = 0 ' Fondo transparente Shape(i).BorderStyle = 1 ' Borde slido Shape(i).BorderWidth = 1 ' 0 Grosor del borde ' Ancho, alto, pos x y po y del shape Shape(i).Top = el_Control.Top - 10 Shape(i).Left = el_Control.Left - 10 Shape(i).Width = el_Control.Width + 30 Shape(i).Height = el_Control.Height + 30

' Estilo flat para el extbox el_Control.Appearance = 0 ' Le quitamos le borde al textbox el_Control.BorderStyle = 0 ' color del borde del shape Shape(i).BorderColor = color_Borde ' Lo hacemos visible Shape(i).Visible = True i = i + 1 ' Crea un shape en forma dinmica Load Shape(i) End If Next End Sub Private Sub Form_Load() Call Aplicar_Borde(Shape1, &H8000000D) End Sub

Nota. en este enlace hay un ejemplo para crear un listbox con borde personalizado
tambin usando un control shape

Pasar el foco entre Textbox al presionar la tecla enter


Este ejemplo muestra una forma de poder, al presionar la tecla enter, pasarle el foco al siguiente textbox. Como en el ejemplo se utiliza la funcin SendKeys para enviar la pulsacin de la tecla Tab, el control que reciba el enfoque lo determinar la propiedad TabIndex Agregar un arreglo de controles textbox, por ejemplo Text1(0), Text1(1), Text1(2) etc...

Cdigo fuente en el formulario

Sub PasarFoco(KeyCode As Integer) ' si es la tecla enter ... If KeyCode = 13 Then ' enva la pulsacin de tecla Tab y pasa el foco _ a la siguiente caja de texto SendKeys "{TAB}" End If End Sub Private Sub Form_Load()

Dim i As Integer ' recorre la matriz de textbox For i = 0 To Text1.Count - 1 ' le especifica la propiedad tabIndex Text1(i).TabIndex = i + 1 Next End Sub

Private Sub Text1_KeyPress(Index As Integer, KeyAscii As Integer) ' anvia como parmetro el valor del cdigo de la tacla Call PasarFoco(KeyAscii) End Sub

Borrar todos los textbox de un formulario


Si queremos eliminar el contenido de todas las cajas de texto de un formulario, podemos utilizar un bocle For Each y el operador Type Of Ejemplo: La rutina LimpiarTextBox, recibe como parmetro el formulario, por ejemplo para limpiar todo el contenido de todas las cajas de texto que hay en el el formulario actual, se ejecutara la rutina de la siguiente forma:

Call LimpiarTextBox(Me)

Colocar en el formulario, un CommandButton y varios controles TextBox Cdigo fuente en el Form

Option Explicit ' recibe como argumento el formulario '''''''''''''''''''''''''''''''''''''''''''''''''''''' Public Sub LimpiarTextBox(frm As Form) ' recorre todos los controles que hay en el formulario For Each Control In frm.Controls ' verifica que el control es de tipo TextBox If TypeOf Control Is TextBox Then '... Si es un Textbox, entonces lo limpia Control.Text = "" End If

Next End Sub ' botn que limpia todos los textbox ''''''''''''''''''''''''''''''''''''' Private Sub Command1_Click() Call LimpiarTextBox(Me) End Sub

Enlaces relacionados

Control ocx para textbox estilo windows xp Aplicar temas de xp con un archivo manifest Ocx para cambiar de color al perder el foco

1 - Textbox que admite solo letras


Cdigo fuente en un form con un textbox1
Texto planoCopiar cdigo fuenteImprimir 1. Private Sub TextBox1_KeyPress(ByVal sender As Object, _ 2. ByVal e As System.Windows.Forms.KeyPr essEventArgs) _ 3. Handles TextBox1.KeyPress 4. 5. If Char.IsLetter(e.KeyChar) Then 6. e.Handled = False 7. ElseIf Char.IsControl(e.KeyChar) Then 8. e.Handled = False 9. ElseIf Char.IsSeparator(e.KeyChar) Then 10. e.Handled = False 11. Else 12. e.Handled = True 13. End If 14. End Sub

Private Sub TextBox1_KeyPress(ByVal sender As Object, _ ByVal e As System.Window s.Forms.KeyPressEventArgs) _ Handles TextBox1.KeyPress If Char.IsLetter(e.KeyChar) Then e.Handled = False ElseIf Char.IsControl(e.KeyChar) Then e.Handled = False ElseIf Char.IsSeparator(e.KeyChar) Then e.Handled = False

Textbox que admite solo nmeros o caracteres que quiera: (Esta es una forma que descubr guiandome de el cdigo de vb6, y est bien cortito).
Cdigo fuente en el formulario con un textbox1
Texto planoCopiar cdigo fuenteImprimir 1. Private Sub TextBox1_KeyPress(ByVal sender As Object, _ 2. ByVal e As System.Windows.Forms.KeyPr essEventArgs) _ 3. Handles TextBox1.KeyPress 4. If InStr(1, "0123456789,-" & Chr(8), e.KeyChar) = 0 Then 5. e.KeyChar = "" 6. End If 7. End Sub
Private Sub TextBox1_KeyPress(ByVal sender As Object, _ ByVal e As System.Window s.Forms.KeyPressEventArgs) _ Handles TextBox1.KeyPress If InStr(1, "0123456789,-" & Chr(8), e.KeyChar) = 0 Then e.KeyChar = "" End If End Sub

Enlace relacionado : Ingresar solo nmeros en DatagridView

2 - Cambiar el foco al otro textbox al presionar enter

Colocar varios varios controles textbox y el siguiente cdigo


Texto planoCopiar cdigo fuenteImprimir 1. Private Sub TextBox1_KeyPress(ByVal sender As Object, _ 2. ByVal e As System.Windows.Forms.KeyPr essEventArgs) _ 3. Handles TextBox1.KeyPress 4. If e.KeyChar = ChrW(Keys.Enter) Then 5. e.Handled = True 6. SendKeys.Send("{TAB}") 7. End If 8. End Sub
Private Sub TextBox1_KeyPress(ByVal sender As Object, _ ByVal e As System.Window s.Forms.KeyPressEventArgs) _ Handles TextBox1.KeyPress If e.KeyChar = ChrW(Keys.Enter) Then e.Handled = True SendKeys.Send("{TAB}") End If End Sub

3 - Seleccionar todo el texto del control al recibir el foco con el mtodo SelectAll

Texto planoCopiar cdigo fuenteImprimir 1. Private Sub TextBox1_TextChanged(ByVal sender As System.Object, _

2. ByVal e As System.EventArgs) _ 3. Handles TextBox1.TextChanged 4. TextBox1.SelectAll() 5. End Sub 6. 7. Private Sub Form1_Load(ByVal sender As System.Object, _ 8. ByVal e As System.EventArgs) _ 9. Handles MyBase.Load 10. TextBox1.Text = " Un texto " 11. End Sub

Private Sub TextBox1_TextChanged(ByVal sender As System.Object, _ ByVal e As System.EventArgs) _ Handles TextBox1.TextChanged TextBox1.SelectAll() End Sub Private Sub Form1_Load(ByVal sender As System.Object, _ ByVal e As System.EventArgs) _ Handles MyBase.Load TextBox1.Text = " Un texto "

4 - Evitar el BEEP al apretar Enter

Texto planoCopiar cdigo fuenteImprimir 1. Private Sub TextBox1_KeyPress(ByVal sender As Object, _ 2. ByVal e As System.Windows.Forms.KeyPr essEventArgs) _ 3. Handles TextBox1.KeyPress 4. If e.KeyChar = Convert.ToChar(Keys.Return) Then 5. e.Handled = True 6. End If 7. End Sub
Private Sub TextBox1_KeyPress(ByVal sender As Object, _ ByVal e As System.Window s.Forms.KeyPressEventArgs) _ Handles TextBox1.KeyPress If e.KeyChar = Convert.ToChar(Keys.Return) Then e.Handled = True End If End Sub

5 - Maysculas y minsculas con Upper y Lower

Texto planoCopiar cdigo fuenteImprimir 1. ' Maysculas 2. Private Sub TextBox1_TextChanged(ByVal sender As System.Object, _ 3. ByVal e As System.EventArgs) _ 4. Handles TextBox1.TextChanged

5. TextBox1.CharacterCasing = CharacterCasing.Upper 6. End Sub 7. 8. 'Minusculas : 9. 10. Private Sub TextBox1_TextChanged(ByVal sender As System.Object, _ 11. ByVal e As System.EventArgs) _ 12. Handles TextBox1.TextChanged 13. TextBox1.CharacterCasing = CharacterCasing.Lower 14. End Sub
' Maysculas Private Sub TextBox1_TextChanged(ByVal sender As System.Object, _ ByVal e As System.EventArgs) _ Handles TextBox1.TextChanged TextBox1.CharacterCasing = CharacterCasing.Upper End Sub 'Minusculas : Private Sub TextBox1_TextChanged(ByVal sender As System.Object, _

6 - Guardar el texto de un textbox en un archivo .txt


Colocar un control Button
Texto planoCopiar cdigo fuenteImprimir 1. Private Sub Button1_Click(ByVal sender As System.Object, _ 2. ByVal e As System.EventArgs) _ 3. Handles Button1.Click 4. ' Crea el archivo 5. FileOpen(1, "c:\texto.txt", OpenMode.Output) 6. ' escribe el contenido 7. Write(1, TextBox1.Text) 8. FileClose(1) ' lo cierra 9. End Sub
Private Sub Button1_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) _ Handles Button1.Click ' Crea el archivo FileOpen(1, "c:\texto.txt", OpenMode.Output) ' escribe el contenido Write(1, TextBox1.Text) FileClose(1) ' lo cierra End Sub

7 - ReadLine - Leer lineas de un archivo de texto


Ejemplo enviado por Xkiz que lee desde un fichero .txt (ubicado en la carpeta debug ) todas las lineas y las visualiza en unos controles textbox
Descargar

Formulario que mediante un botn abre un dilogo para seleccionar un archivo de texto, y leer mediante el mtodo ReadLine del objeto StreamReader, todas las lneas y visualziarlas en un control textBox Colocar un control textbox multilinea, un control button y un control openFileDialog
Texto planoCopiar cdigo fuenteImprimir 1. Option Strict On 2. ' espacio de nombre para poder usar StreamReader 3. Imports System.IO 4. 5. Public Class Form1 6. 7. Private Sub Form1_Load(ByVal sender As System.Object, _ 8. ByVal e As System.EventArgs) _ 9. Handles MyBase.Load 10. Button1.Text = " Abrir archivo " 11. End Sub 12. 13. Function Leer(ByVal path As String) As String 14. Try 15. Dim oSR As StreamReader = New StreamReader(path) 16. 17. Dim l As String 18. Dim tempSTR As String = "" 19. ' lee la primer lnea 20. l = oSR.ReadLine() 21. While Not l Is Nothing 22. ' variable temporal que almacena las lneas 23. tempSTR = tempSTR & l & vbNewLine 24. l = oSR.ReadLine() ' lee la siguiente 25. End While 26. ' cierra y libera los recursos 27. oSR.Close() 28. oSR.Dispose() 29. ' retorna el texto 30. Return tempSTR 31. ' errores 32. Catch oe As Exception 33. Return "" 34. MsgBox(oe.Message) 35. End Try 36. 37. End Function 38. 39. Private Sub Button1_Click(ByVal sender As System.Object, _ 40. ByVal e As System.EventArgs) _ 41. Handles Button1.Click

42. 43. 44. 45.

With OpenFileDialog1 .FileName = "" .Filter = "Archivos de texto *.txt|*.txt|Todos *.*|*.*" ' abre el dilogo para seleccionar archivo el de texto .ShowDialog() If .FileName <> "" Then TextBox1.Text = Leer(.FileName) End If With

46. 47. 48. 49. 50. 51. End 52. End Sub 53. End Class

Option Strict On ' espacio de nombre para poder usar StreamReader Imports System.IO Public Class Form1 Private Sub Form1_Load(ByVal sender As System.Object, _ ByVal e As System.EventArgs) _ Handles MyBase.Load Button1.Text = " Abrir archivo "

8 - Mtodo ReadToEnd - Leer todo el contenido de un archivo de texto y visualizarlo en un texbox


( controles : Un control Button , un textBox1 Multiline )
Texto planoCopiar cdigo fuenteImprimir 1. Option Explicit On 2. Option Strict On 3. Imports System.IO 4. 5. Public Class Form1 6. 7. Private Sub Form1_Load( _ 8. ByVal sender As System.Object, _ 9. ByVal e As System.EventArgs) Handles MyBase.Load 10. Me.Text = "Ejemplo del mtodo ReadToEnd" 11. Button1.Text = "Abrir archivo de texto " 12. End Sub 13. 14. Private Sub Button1_Click( _ 15. ByVal sender As System.Object, _ 16. ByVal e As System.EventArgs) Handles Button1.Click 17. 18. ' nuevo dilogo 19. Dim OpenFiledlg As New OpenFileDialog 20. With OpenFiledlg 21. .Title = "Seleccionar archivo de texto" 22. .Filter = "Archivos de texto *.txt|*.txt"

23. 24. 25. 26.

Try If .ShowDialog = Windows.Forms.DialogResult.OK Then Dim datos As New StreamReader(.FileName) ' lee todo el contenido y lo asigna al textbox

27. TextBox1.Text = datos.ReadToEnd 28. datos.Close() ' cierra 29. End If 30. ' error 31. Catch oMen As Exception 32. MsgBox(oMen.Message, MsgBoxStyle.Critical) 33. End Try 34. End With 35. End Sub 36. End Class
Option Explicit On Option Strict On Imports System.IO Public Class Form1 Private Sub Form1_Load( _ ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles MyBase.Load Me.Text = "Ejemplo del mtodo ReadToEnd"

9 - Limpiar todo el contenido de los textbox de un formulario


Ejemplo que recorre mediante un bucle For Each todos los objetos Textbox que se encuentran en el form indicado para eliminar el contenido Agregar algunos TextBox, un Button
Texto planoCopiar cdigo fuenteImprimir 1. Imports System.Windows.Forms 2. 3. Public Class Form1 4. 5. Private Sub Limpiar_Cajas(ByVal f As Form) 6. ' recorrer todos los controles del formulario indicado 7. For Each c As Control In f.Controls 8. If TypeOf c Is TextBox Then 9. c.Text = "" ' eliminar el texto 10. End If 11. Next 12. End Sub 13. 14. Private Sub Button1_Click( _ 15. ByVal sender As System.Object, _ 16. ByVal e As System.EventArgs) Handles Button1.Click 17. ' pasar el formulario

18. 19. 20. 21. 22. 23. 24. 25. 26. 27. End

Call Limpiar_Cajas(Me) End Sub Private Sub Form1_Load( _ ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles MyBase.Load Button1.Text = "Limpiar textBox" End Sub Class

Das könnte Ihnen auch gefallen