Visual Basic - цикл автоматизации - PullRequest
0 голосов
/ 01 марта 2019

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

как я могу зациклить это и заставить его каждый раз читать одно и то же текстовое поле, но разные строки. Например, у меня есть2 текстовое поле, которое оно загружает

первое текстовое поле: (число)

второе текстовое поле: (URL)

так что мне нужно написать 10 кодов и 10 URLи когда я нажимаю кнопку, я хочу, чтобы она выполняла эти циклы, но каждый раз она занимает другую строку в том же текстовом поле

, например: 1-е текстовое поле содержит 4 разные строки

2-е текстовое полесодержит 4 разные строки

, поэтому каждый раз, когда он загружает 1 строку из 1-го текстового поля и 1 строку из 2-го текстового поля, а после завершения он останавливает

какие-либо помощники?

`    Private Sub Button6_Click(sender As Object, e As EventArgs) Handles Button6.Click

    objIE.Document.GetElementById("imdb_id").Focus()
    objIE.Document.GetElementById("imdb_id").InnerText = imdb.Text$
    objIE.Document.GetElementById("import_btn").InvokeMember("Click")
    Delay(5)
    objIE.Document.Forms(0).InvokeMember("submit")
    Delay(5)
    objIE.Document.GetElementById("link-active").InvokeMember("Click")
    objIE.Document.GetElementById("selected-source").SetAttribute("value", "embed")
    objIE.Document.GetElementById("video_url").Focus()
    objIE.Document.GetElementById("video_url").InnerText = TextBox2.Text$
    objIE.Document.GetElementById("add-link").InvokeMember("Click")
    Delay(2)


End Sub`

1 Ответ

0 голосов
/ 01 марта 2019

Черновик ... добавьте DataGridView и установите его с двумя столбцами:

Public Class Form1

    Private Entries As New List(Of Tuple(Of String, String))
    Private EntriesEnum As IEnumerator(Of Tuple(Of String, String))

    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        If IsNothing(EntriesEnum) Then
            Entries.Clear()
            For i As Integer = 0 To DataGridView1.Rows.Count - 2 ' ignore last row (for adding new rows)
                Entries.Add(New Tuple(Of String, String)(DataGridView1.Rows(i).Cells(0).Value, DataGridView1.Rows(i).Cells(1).Value))
            Next
            If Entries.Count > 0 Then
                EntriesEnum = Entries.GetEnumerator
                DataGridView1.Enabled = False
                Button1.PerformClick()
            End If
        ElseIf EntriesEnum.MoveNext Then
            Dim current As Tuple(Of String, String) = EntriesEnum.Current
            Debug.Print(current.Item1 & ", " & current.Item2)
        Else
            MessageBox.Show("Done!")
            EntriesEnum = Nothing
            DataGridView1.Enabled = True
        End If
    End Sub

End Class
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...