VB6: Get OnReadyState Value do Browser Control
-
24-09-2019 - |
Pergunta
Estou tentando obter o valor ONREADESTATE do controle do navegador, detecte quando a página terminar de carregar. Infelizmente, o .returnValValue do evento retorna vazio. o que há de errado?
Aqui está o meu código - THX:
Dim WithEvents m_doc As HTMLDocument
Private Sub Form_Load()
Set m_doc = WebBrowser1.Document
End Sub
Private Sub m_doc_onreadystatechange()
Dim m_event As IHTMLEventObj
Set m_event = m_doc.parentWindow.event
m_value = "'" & m_event.returnValue & "'"
MsgBox "onreadystatechange: " & m_value
End Sub
Solução
Se você quiser usar os eventos do htmldocument, tente
m_doc.createDocumentFromUrl "http://www.microsoft.com", ""
Caso contrário, você poderá usar o evento do WebBrowser Control para detectar quando um documento está completamente carregado ou ligue para o método Navigate ou Navigate2 e loop imediatamente enquanto pesquisou o webbrowser.readyState
WebBrowse1.Navigate2 "http://www.microsoft.com"
Do While WebBrowser1.ReadyState <> READYSTATE_COMPLETE
DoEvents
Loop
Claro, não se esqueça de adicionar um manipulador de erros.
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow