VB.NET WebBrowser нажмите на кнопку - PullRequest
3 голосов
/ 16 февраля 2011

Я работаю над небольшим VB.NET проектом, который автоматически заполняет поля на странице регистрации Yahoo.Можно ли нажать кнопку «Проверить» и посмотреть, в порядке ли введенный идентификатор?

Что-то вроде того, что введенный идентификатор в порядке, затем продолжить заполнение поля, если нет, попробуйте другой идентификатор и снова нажмите кнопку «Проверить».

Ответы [ 2 ]

5 голосов
/ 16 февраля 2011

Элемент управления веб-браузера позволяет вам получать доступ к элементам внутри веб-страницы, и вы можете вызывать методы для них, поэтому что-то простое, как это, будет нажимать кнопку:

webBrowser1.Document.All("yidHelperBtn").InvokeMember("click");
0 голосов
/ 16 февраля 2011

Добавить таймер в ваше приложение с интервалом 1000 мс.Вот код:

Dim CheckButton, yahooId As HtmlElement
Private Sub WebBrowser1_DocumentCompleted(ByVal sender As System.Object, ByVal e As System.Windows.Forms.WebBrowserDocumentCompletedEventArgs) _ 

Обрабатывает WebBrowser1.DocumentCompleted

    yahooId = WebBrowser1.Document.GetElementById("yahooid")
    CheckButton = WebBrowser1.Document.GetElementById("yidHelperBtn")

    yahooId.InnerText = "testID" 'Replace testID by the ID you want

    Timer1.Start() 'Starts the timer: within 1000 ms (1 s). It will execute the Timer1_Tick sub.

End Sub

Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
    CheckButton.Focus() 'Give the check button the focus
    SendKeys.Send("{ENTER}") 'Causes the validation of the check button
    Timer1.Stop() 'Stops the timer 
End Sub

Я добавил таймер, потому что браузер, похоже, не проверяет клавишу Enter, когда используется метод WebBrowser1_DocumentCompleted.1007 *

С помощью этого кода вы можете узнать, в порядке ли введенный вами идентификатор.Это не полное, но хорошее начало, постарайтесь понять и адаптировать его под свои нужды.

...