Visual Basic - 自动化循环

问题描述 投票:0回答:1

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

我怎么能循环这个并使它每次读取相同的文本框但不同的行例如我有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`
vb.net visual-studio loops
1个回答
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
© www.soinside.com 2019 - 2024. All rights reserved.