情况是这样的:
有一个公司网页(该页面只有一段描述性的文字,一个文本框与一个提交按钮),我所负责的工作就是打开他,然后在文本框输入一个值,然后提交.页面提交后,又会返回该页面,我再在那文本框输入一个值再提交.....此工序不断循环.现在我想针对此工序写一个程序,当我打开该网页的时候,网页的文本框会自动输入一个值,然后提交,提交后返回又自动输入一个值,提交...我原来是用模拟建盘的方法来实现的(就是取得该文本框坐标,然后鼠标点下,输入值,后提交),后来发现一个问题,就是那段描述性的文字,因为这段文字每次都不一样,使文本框的坐标有所变化,因此,方法宣告失败!!我想了很久,都不知道该用何种方法来实现此功能.望高手们帮帮忙,给点思路(如果需要用到某些控件、API的话,请麻烦一下,把那控件、API的调用,声明等详细写写),因为我对WEB那块一点都不熟,所以望高手指点的时候能详细点!!
先在此谢过~~~

解决方案 »

  1.   

    把鼠标定位更换成TAB定位就可以了
      

  2.   

    很容易实现的,根本不用模拟鼠标什么的。我写了一个代码,可以打开百度搜索,自动输入要查找的字符串并自动提交,你只要稍加修改就可以用了。
    Private Sub Form_Load()
        web.Navigate "http://www.baidu.com"
    End SubPrivate Sub web_DocumentComplete(ByVal pDisp As Object, URL As Variant)
        Dim i As Integer
        If Not (pDisp Is web.Object) Then
            Exit Sub
        Else
            For i = 0 To web.Document.Forms(0).length - 1
              If web.Document.Forms(0)(i).Name = "wd" Then
                web.Document.Forms(0)(i).Value = "要查找的字符串"
              End If
            Next i
            For i = 0 To web.Document.Forms(0).length - 1
               If web.Document.Forms(0)(i).Value = "百度搜索" Then
                 web.Document.Forms(0)(i).Click
                 Exit For
               End If
            Next i
        End If
    End Sub
    说明:用了webbrowser控件名字叫web,"wd"是百度用来输入搜索内容的那个文本框的name,"百度搜索"是提交按钮的value,这些你都可以通过查看源代码来获得。