CLR: .Net / Mono / Boo / Otros CLR > VB .NET

 Cambiar De Color A Un Texbox

(1/2) > >>

Sagma:
Hola a todos, quisiera saber si hay alguna forma de que el cambio de color del textbox, que cuando el cursor este en este cambie de color.

he encontrado :


--- Código: Text ---      Private Sub txt_descripcion_GotFocus(ByVal sender As Object, ByVal e As System.EventArgs) Handles txt_descripcion.GotFocus        Me.txt_descripcion.BackColor = Color.Yellow    End Sub     Private Sub txt_descripcion_LostFocus(ByVal sender As Object, ByVal e As System.EventArgs) Handles txt_descripcion.LostFocus        Me.txt_descripcion.BackColor = Color.White    End Sub   
pero como le hago para 12 textbox, tendre que hacer uno por uno, o hay alguna manera de hacer todo en uno solo  :blink:

gracias

Cajami:
Hola que tal, en el .Net existe Handles  bueno ps para crear un procedimiento compartido, bueno para no aburrirte puedes hacer esto:


  Private Sub txt_descripcion_GotFocus(ByVal sender As Object, ByVal e As System.EventArgs) Handles txt_descripcion.GotFocus, TextBox1.GotFocus, TextBox2.Gotfocus
       Me.txt_descripcion.BackColor = Color.Yellow
   End Sub

Lo que hace es unir ese procedimiento con esos objetos (TextBox). Nos vemos  :hola:


Tumbes - Perú

Sagma:
gracias cajami por contestar, miren encontre este ejemplo en la web, pero me da errores.

agluien me podrian indicar el motivo del error:


--- Código: Text ---     Private Sub TieneFoco(ByVal sender As Object, ByVal e As System.EventArgs)        Dim miTextBox As TextBox DirectCast(sender, TextBox)()        miTextBox.BackColor(Color.Yellow)    End Sub     Private Sub PierdeFoco(ByVal sender As Object, ByVal e As System.EventArgs)    Dim miTextBox As TextBox DirectCast(sender, TextBox)        miTextBox.BackColor(Color.White)    End Sub 'Esto dentro del Load        Dim ctrl As Control        For Each ctrl In Me.Controls            If (TypeOf (ctrl) Is TextBox) Then                Dim miTextBox As TextBox  DirectCast(ctrl, TextBox)                 AddHandler miTextBox.Enter, AddressOf TieneFoco                AddHandler miTextBox.Leave, AddressOf PierdeFoco            End If        Next  
el error que me das es el:

DirectCast(sender, TextBox) ya que sale el mensaje "se esperaba el fin de la instruccion"

y en

miTextBox.BackColor(Color.White) "Debe asignarse un acceso de propiedad a la propiedad o utilizar el valor"

gracias  :whistling:

The Black Boy:
Saludos amigo...

prueba esto y me cuentas


--- Código: Text --- Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load        Dim ctrl As Control        For Each ctrl In Me.Controls            If (TypeOf (ctrl) Is TextBox) Then                Dim miTextBox As TextBox                Me.mitextbox = DirectCast(ctrl, TextBox)                AddHandler miTextBox.Enter, AddressOf TieneFoco                AddHandler miTextBox.Leave, AddressOf PierdeFoco            End If        Next    End Sub    Private Sub TieneFoco(ByVal sender As Object, ByVal e As System.EventArgs)        Dim miTextBox As TextBox        Me.mitextbox = DirectCast(sender, TextBox)        mitextbox.BackColor = (Color.Yellow)    End Sub     Private Sub PierdeFoco(ByVal sender As Object, ByVal e As System.EventArgs)        Dim miTextBox As TextBox        Me.mitextbox = DirectCast(sender, TextBox)        mitextbox.BackColor = (Color.White)    End Sub  
no estoy muy seguro espero te sirva...

senzao18:
Lo que pasa es que en esta linea de codigo


--- Código: Text --- Dim miTextBox As TextBox  DirectCast(ctrl, TextBox)   
son dos instrucciones
tendria que ser algo asi


--- Código: Text --- Dim miTextBox As TextBox = DirectCast(ctrl, TextBox)   

El codigo que te puso The Black Boy a simple vista se ve que está correcto...

Igual lo que puso Cajami es una muy buena opcion....

Saludos.

Navegación

[0] Índice de Mensajes

[#] Página Siguiente

Ir a la versión completa