Autor
|
Tema: Realizar tabs en un webbrowser mediante SendMessage (Leído 4,962 veces)
|
demoniox12
Desconectado
Mensajes: 204
El conocimiento es poder
|
Buenas... He estado intentando realizar tabs para seleccionar otros links mediante sendmessage.. pero no me ha funcionado.. hago el click y no realiza ninguna accion.. dejo el source a ver si alguien encuentra el error.. Form: Private Declare Function SendMessage Lib "user32.dll" Alias "SendMessageA" (ByVal hwnd As Integer, ByVal wMsg As Integer, ByVal wParam As Integer, ByVal lParam As String) As Long Private Const WM_KEYDOWN = &H100 Private Const WM_KEYUP = &H101 Private Const VK_TAB = &H9 Private Sub Command1_Click() Dim hwnd As Long hwnd = GetBrowserHandle(Me.hwnd) SendMessage hwnd, WM_KEYDOWN, VK_TAB, 0& 'SendMessage hWnd, WM_KEYUP, VK_TAB, 0& End Sub Private Sub Form_Load() WebBrowser1.Navigate "http://www.google.com" End Sub
Modulo: Private Declare Function GetClassName Lib "user32.dll" Alias "GetClassNameA" ( _ ByVal hwnd As Long, _ ByVal lpClassName As String, _ ByVal nMaxCount As Long _ ) As Long Private Declare Function EnumChildWindows Lib "user32.dll" ( _ ByVal hWndParent As Long, _ ByVal lpEnumFunc As Long, _ ByVal lParam As Long _ ) As Long Private hWndIE As Long Private Function EnumChildProc(ByVal hwnd As Long, ByVal lParam As Long) As Long Dim sClassName As String sClassName = String(255, vbNullChar) Call GetClassName(hwnd, sClassName, 255) sClassName = Left$(sClassName, InStr(sClassName, vbNullChar) - 1) If sClassName <> "Internet Explorer_Server" Then EnumChildProc = 1 Else hWndIE = hwnd End If End Function Public Function GetBrowserHandle(ByVal hWndParent) As Long hWndIE = 0 Call EnumChildWindows(hWndParent, AddressOf EnumChildProc, 1) GetBrowserHandle = hWndIE End Function
Encuentra el handle y todo del webbrowser pero no se porke no realiza los tabs en la pagina.. Saludos!
|
|
« Última modificación: 27 Febrero 2009, 21:00 pm por demoniox12 »
|
En línea
|
By Demoniox
|
|
|
seba123neo
|
Hola, y esto no te sirve? Private Sub Command1_Click() WebBrowser1.SetFocus SendKeys "{tab}" End Sub Private Sub Form_Load() WebBrowser1.Navigate "http://www.google.com" End Sub
saludos.
|
|
|
En línea
|
|
|
|
demoniox12
Desconectado
Mensajes: 204
El conocimiento es poder
|
Hola, y esto no te sirve? Private Sub Command1_Click() WebBrowser1.SetFocus SendKeys "{tab}" End Sub Private Sub Form_Load() WebBrowser1.Navigate "http://www.google.com" End Sub
saludos. no.. porke el webbrowser estara oculto.. Saludos y gracias igual..
|
|
|
En línea
|
By Demoniox
|
|
|
seba123neo
|
oculto en que sentido?, en Visible = Flase o oculto a la vista del usuario poniendolo en cordenadas X,Y que no se vean...?
|
|
|
En línea
|
|
|
|
demoniox12
Desconectado
Mensajes: 204
El conocimiento es poder
|
oculto en que sentido?, en Visible = Flase o oculto a la vista del usuario poniendolo en cordenadas X,Y que no se vean...?
Visible = False
|
|
|
En línea
|
By Demoniox
|
|
|
Dessa
Desconectado
Mensajes: 624
|
Hola, no se si correspònde SendMessage para este caso pero me parece que estas mandando mal el mensaje
Private Const WM_CHAR = &H102 Private Const WM_BACK = &H8 Private Const WM_TAB = &H9
Call SendMessage(hwnd, WM_CHAR, VK_TAB, 0&)
Saludos
|
|
|
En línea
|
Adrian Desanti
|
|
|
byway
Desconectado
Mensajes: 181
^^,
|
oculto en que sentido?, en Visible = Flase o oculto a la vista del usuario poniendolo en cordenadas X,Y que no se vean...?
Visible = False segun tengo entendido un webnrowser en : Visible = False ... no realiza ninguna accion (no navega), corriganme si me equivoco
|
|
|
En línea
|
|
|
|
demoniox12
Desconectado
Mensajes: 204
El conocimiento es poder
|
Hola, no se si correspònde SendMessage para este caso pero me parece que estas mandando mal el mensaje
Private Const WM_CHAR = &H102 Private Const WM_BACK = &H8 Private Const WM_TAB = &H9
Call SendMessage(hwnd, WM_CHAR, VK_TAB, 0&)
Saludos
Tira error de desbordamiento.. oculto en que sentido?, en Visible = Flase o oculto a la vista del usuario poniendolo en cordenadas X,Y que no se vean...?
Visible = False segun tengo entendido un webnrowser en : Visible = False ... no realiza ninguna accion (no navega), corriganme si me equivoco el Form es el que estara invisible.. Saludos!
|
|
|
En línea
|
By Demoniox
|
|
|
Novlucker
Ninja y
Colaborador
Desconectado
Mensajes: 10.683
Yo que tu lo pienso dos veces
|
Navega, no se ve, y por ende no se puede utilizar sendkey Creo que es más sencillo hacer lo que buscas sin tener que estar haciendo eso Saludos
|
|
|
En línea
|
Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD "Hay dos cosas infinitas: el Universo y la estupidez humana. Y de la primera no estoy muy seguro." Albert Einstein
|
|
|
Dessa
Desconectado
Mensajes: 624
|
SenMessage está mal declarado
Private Declare Function SendMessage Lib "user32.dll" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
Saludos
|
|
|
En línea
|
Adrian Desanti
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Como realizar un XST mediante TRACE
Dudas Generales
|
3st3
|
0
|
3,506
|
31 Diciembre 2010, 00:52 am
por 3st3
|
|
|
Realizar función al hacer click en un input button de un WebBrowser?
« 1 2 3 4 »
.NET (C#, VB.NET, ASP)
|
z3nth10n
|
31
|
20,877
|
13 Junio 2013, 21:25 pm
por Eleкtro
|
|
|
Aplication para TABS Facebook ?
PHP
|
Diabliyo
|
1
|
1,631
|
29 Diciembre 2013, 20:51 pm
por #!drvy
|
|
|
return chrome.tabs.executeScript
Scripting
|
hosck
|
0
|
1,680
|
19 Enero 2022, 02:33 am
por hosck
|
|
|
ViewPager2 es lento al mostrar los Tabs
Java
|
MaX2
|
0
|
2,540
|
23 Mayo 2022, 20:06 pm
por MaX2
|
|