vb6: нажмите кнопку HTMLDocument по коду и дождитесь загрузки страницы - PullRequest
0 голосов
/ 23 октября 2010

Я использую mshtml.tlb для загрузки / анализа html, и я хотел бы расширить его для щелчка элементов по коду.проблема заключается в задержке процесса загрузки, например, после.кнопка была нажата.в моем конкретном случае я хотел бы выполнить вход пользователя.

вот мой код:

Dim WithEvents m_doc As HTMLDocument

' load page
Set m_docNU = New HTMLDocument
Set m_doc = m_docNU.createDocumentFromUrl(m_url, vbNullString)

Do While m_doc.readyState = "loading" Or m_doc.readyState = "interactive"
DoEvents
Loop

set txtUsername = m_doc.getElementById("username")
set txtPasswort = m_doc.getElementById("passwort")
set myButton = m_doc.getElementById("submit")

myButton.click

теперь вот большой вопросительный знак: как продолжить vb6-like ждатьстраница загружена "?я пробовал, как и выше, используя цикл do while и проверяя readyState, но по какой-то причине readyState не меняется после нажатия кнопки ..

какие-либо идеи?1010 *

ps: есть ли более элегантный способ вместо цикла do while?например.используя индикатор выполнения?

1 Ответ

0 голосов
/ 01 апреля 2011
  • используйте vb.net

  • wBrowser - объект веб-браузера

    While wBrowser.ReadyState <> WebBrowserReadyState.Complete
         Application.DoEvents()
    End While
    
...