none
como hacer un sub RRS feed

  • Pregunta

  • Buenas 

    Como podria hacer un sub para ser llamado desde cuando el mouse hace  click en un textbox se vacie el textbox 

    que funciones desde cualquier textbox del formulario

    Gracias

    con este codigo me vacia todos los textbox de un formulario 

    y lo que me interesa es que me vacie el textbox donde yo haga click

     Sub Borrar_Textbox(ByVal container As Control)
            'Aborto procedimiento
            If container Is Nothing Then
                Return
            ElseIf Not container.HasChildren Then
                Return
            End If
    
            'Recorro controles dentro del contenedor
            For Each ctrl As Control In container.Controls
                'Si es del tipo TextBox
                If TypeOf ctrl Is TextBox Then
                    'Limpio texto
                    CType(ctrl, TextBox).Clear()
                End If
    
                'Si es un control contenedor
                If ctrl.HasChildren Then
                    'Reinvoco procedimiento con este control
                    Borrar_Textbox(ctrl)
                End If
            Next
        End Sub

    • Editado JETET jueves, 22 de diciembre de 2016 20:25
    jueves, 22 de diciembre de 2016 19:52

Respuestas

  • Usa el Sender del evento click:

    Sub Textbox_Click(Sender as Object, e as EventArgs)
        Ctype(sender, TextBox).Clear()
    End Sub

    Y después esa subrutina conéctala al evento Click de todos los textboxes. Esta conexión puedes hacerla con una subrutina recursiva muy parecida a la que has llamado Borrar_TextBox, con la única diferencia de que en lugar de poner CType(ctrl, TextBox).Clear() tendrás que poner AddHandler CType(ctrl.TextBox).Click, AddressOf TextBox_Click. Y lógicamente, esa inicialización solo tienes que hacerla una única vez en el momento de cargar el formulario.

    • Marcado como respuesta JETET viernes, 23 de diciembre de 2016 8:18
    jueves, 22 de diciembre de 2016 20:30

Todas las respuestas

  • Usa el Sender del evento click:

    Sub Textbox_Click(Sender as Object, e as EventArgs)
        Ctype(sender, TextBox).Clear()
    End Sub

    Y después esa subrutina conéctala al evento Click de todos los textboxes. Esta conexión puedes hacerla con una subrutina recursiva muy parecida a la que has llamado Borrar_TextBox, con la única diferencia de que en lugar de poner CType(ctrl, TextBox).Clear() tendrás que poner AddHandler CType(ctrl.TextBox).Click, AddressOf TextBox_Click. Y lógicamente, esa inicialización solo tienes que hacerla una única vez en el momento de cargar el formulario.

    • Marcado como respuesta JETET viernes, 23 de diciembre de 2016 8:18
    jueves, 22 de diciembre de 2016 20:30
  • Muchisimas Gracias Alberto
    viernes, 23 de diciembre de 2016 8:19