Visual Basic-自动化循环

时间:2019-03-01 12:31:35

标签: vb.net visual-studio loops

我正在开发一个机器人来帮助我将某些内容上传到我的网站,所以这是自动化代码

我该如何循环播放并使其每次读取相同的文本框但不同的行 例如,我有2个确实要上传的文本框

第一个文本框:(数字)

第二个文本框:(url)

所以我需要写的是10个代码和10个网址,当我按下按钮时,我希望它在这些功能上循环播放,但是每次都在同一文本框中使用另一行

例如:第一个文本框包含4条不同的行

第二个文本框包含4条不同的行

因此,每次它确实从第一个文本框加载1行和从第二个文本框加载1行,完成后它都会停止

有没有帮手?

`    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 :(得分:0)

草稿...添加一个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