VB6: получить значение onreadystate из браузера - PullRequest
0 голосов
/ 02 апреля 2010

Я пытаюсь получить значение onreadystate из элемента управления браузера, и обнаруживает, когда страница закончила загрузку к сожалению, событие .returnValue возвращается пустым. что не так?

вот мой код - спасибо:

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

1 Ответ

2 голосов
/ 02 апреля 2010

Если вы хотите использовать события HTMLDocument, попробуйте

m_doc.createDocumentFromUrl "http://www.microsoft.com", ""

В противном случае вы можете использовать событие элемента управления WebBrowser, чтобы определить, когда документ полностью загружен, или вызвать метод Navigate или Navigate2 и сразу выполнить цикл при опросе WebBrowser.ReadyState

.
WebBrowse1.Navigate2 "http://www.microsoft.com"
Do While WebBrowser1.ReadyState <> READYSTATE_COMPLETE
    DoEvents
Loop

Конечно, не забудьте добавить обработчик ошибок.

...