Arreglo de la perdida del foco en el control Webbrowser

imagen principal Fecha de publicación: 17/05/2017

Con el control Webbrowser tenemos un grave problema a la hora de establecer el foco en el control, ya que por mucho que le establezcamos la función de Setfocus, obvía por completo la instrucción. La única forma que hay de que el control reciba el foco y poder navegar por el contenido del Webbrowser es haciendo click sobre el objeto y esto como comprenderéis es muy patatero.

Pues bien, he ideado una solución para acabar con este grave error y os lo expondré siguiendo estos pasos a realizar:

1) Tenemos que incluir la referencia Microsoft HTML Object Library. Ya sabéis, nos vamos al menú Proyecto -> Referencias y la incluimos.

2) Creamos un Formulario e insertamos un control Webbrowser

3) Pegamos este código en el formulario:

Private Declare Sub mouse_event Lib "user32" (ByVal dwFlags As Long, ByVal dx As Long, ByVal dy As Long, ByVal cButtons As Long, ByVal dwExtraInfo As Long)

Private Const MOUSEEVENTF_LEFTDOWN = &H2 ' left button down
Private Const MOUSEEVENTF_LEFTUP = &H4 ' left button up

Private WithEvents objDocument As HTMLDocument
Private clickado As Boolean

Private Sub Form_Activate()
    clickado = False
End Sub

Private Sub Form_Load()
    clickado = False
    WebBrowser1.Navigate2 App.Path & "\prueba.html"
End Sub

Private Sub Form_Resize()
    On Error Resume Next
    WebBrowser1.Move 0, 0, Me.ScaleWidth, Me.ScaleHeight
    On Error GoTo 0
End Sub

Private Sub clickar()
    On Error GoTo erro1

    mouse_event MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0
    mouse_event MOUSEEVENTF_LEFTUP, 0, 0, 0, 0
    clickado = True
erro1:
End Sub

Private Sub objDocument_onmousemove()
    If clickado = False Then
        clickar
    End If
End Sub


Private Sub WebBrowser1_NavigateComplete2(ByVal pDisp As Object, URL As Variant)
    Set objDocument = WebBrowser1.Document
End Sub

En Webbrowser1.Navigate2 pondremos nuestra página que deseemos cargar

DESCARGAR WEBBROWSER.zip(682 descargas)

Si te gusta este artículo compártelo en las redes sociales

Comentarios

No se han publicado comentarios

Publicar un comentario

Introduzca un comentario

Nombre:
Comentario:
Introduce los números
de la imagen de arriba
Introducir

Si te gusta o te es útil esta página puedes hacer una donación para permitir su mantenimiento