一个当前打开的本地HTML页面,上边有多个TEXTBOX和COMBOBOX框,怎么搞实现数据填写哪位兄弟做过自动填单的,请指点一下,谢谢

解决方案 »

  1.   

    不知道是不是太简单或者怎么回事,反正网上找不到多少资料
    有几点需要补充一下:
    1.不适合在程序中读HTML源码,改变之后再写进去,然后刷新,
    2.HTML页面上有多个COMBOBOX,COMBOBOX是可以取到句柄的,但是怎么区分该条数据是要放到哪个COMBOBOX中呢,TEXTBOX是取不到HANDLE的没有思路,希望各位多多帮忙```
      

  2.   

    Private Sub Form_Load()
    WebBrowser1.Navigate2 App.Path & "\test.htm"
    End SubPrivate Sub WebBrowser1_DocumentComplete(ByVal pDisp As Object, URL As Variant)    Dim vDoc, vTag
        Dim i As Integer
          
        Set vDoc = WebBrowser1.Document
        List1.Clear
        For i = 0 To vDoc.All.length - 1
            If UCase(vDoc.All(i).tagName) = "INPUT" Then
                Set vTag = vDoc.All(i)
                If vTag.Type = "text" Or vTag.Type = "password" Or vTag.Type = "radio" Then
                    List1.AddItem vTag.Name
                    Select Case vTag.Name
                        Case "Name"
                            vTag.Value = "IMGod"
                        Case "R2"
                            vTag.Checked = True
                        Case "NickName"
                            vTag.Value = "IMGod"
                        Case "Password"
                            vTag.Value = "IMGodpass"
                        Case "EMail"
                            vTag.Value = "[email protected]"
                    End Select
                ElseIf vTag.Type = "submit" Then
                    'vTag.Click
                End If
            End If
        Next i
    End Sub'test.htm文件
    <HTML>
    <HEAD>
    <TITLE>测试页</TITLE>
    </HEAD>
    <BODY>
    <form method="POST" action="result.asp">
      <p>请填写下面表单注册(*项为必添项)</p>
      <p>*姓名<input type="text" name="Name" size="20"></p>
      <p>*男<input type="radio" value="V1" name="R1"></p>
      <p>*女<input type="radio" value="V1" name="R2"></p>
      <p>*昵称<input type="text" name="NickName" size="20"></p>
      <p>电子邮件<input type="text" name="EMail" size="20"></p>
      <p>*密码<input type="password" name="Password" size="20"></p>
      <p><input type="submit" value="提交" name="B1">
      <input type="reset" value="全部重写" name="B2"></p>
    </form>
    </BODY>
    </HTML>
      

  3.   

    vDOC对象变量未设置,大哥,再帮忙一下
      

  4.   

    还有就是,HTML页面已经在本机打开,相对VB6程序来说应该属于外部程序,VB6从数据库中获得数据,应该是填写外部网页文件...
      

  5.   

    你把test.htm文件放到vb工程目录下
    没有啥问题
      

  6.   

    问题还是没有解决哦,我主要是想实现:
    HTML页已经用浏览器打开了,VB6只是要为了实现填数据到其上面的TEXT  或  选择COMBOBOX,  多多帮忙啊,我在那想是不是应该与浏览器有个什么接口啊什么的不知道,都没得思路...
      

  7.   

    请帮帮忙呀
    怎么用VB6实现填数据到HTML上面的TEXT  或  选择COMBOBOX
    不是要修改vb6下用控件打开的HTML,而是修改浏览器(IE、腾讯TT、MyIE或其他浏览器)上显示的一个HTML
      

  8.   

    怎么没人回答呀怎么用VB6实现填数据到HTML上面的TEXT  或  选择COMBOBOX
    不是要填写vb6下用控件打开的HTML,而是填写浏览器(IE、腾讯TT、MyIE或其他浏览器)上显示的一个HTML继续顶!
      

  9.   

    用HTML庫來開發,很輕松就搞定。
      

  10.   

    http://support.microsoft.com/default.aspx?scid=kb;en-us;176792
      

  11.   

    Private Sub Form_Load()
        '此例需要引用Microsoft Internet Controls
        Dim SWs As New ShellWindows
        Dim IE, vDoc
        For Each IE In SWs
            Set vDoc = IE.Document
            If TypeName(vDoc) = "HTMLDocument" Then
                If Trim(vDoc.Title) = "百度——全球最大中文搜索引擎" Then
                    vDoc.getElementById("wd").Value = "PowerBASIC中国" '填写表单
                    vDoc.getElementById("f").submit '提交表单
                    Exit For
                End If
            End If
        Next
    End Sub
      

  12.   

    多谢楼上两位,终于有了个眉目了对单FRAME对象可以搞定了,但是,如果这个页面由多个FRAME组合成的,该怎么取到那个FRAME并填单呢?
      

  13.   

    一步之距了,我是实在没做过这方面的东西,手头又没资料,麻烦各位帮帮忙如:页面源文件中有这样一句<frame src="Right.htm" name="main">
    而许多的TEXTBOX,COMBOBOX都是在这个frame上面的,这种情况又该怎么填写表单呢
      

  14.   

    Option ExplicitPrivate Sub Command1_Click()
        Dim vShellWindow As New ShellWindows
        Dim vWebBrowser As New WebBrowser
        Dim vTemp
        On Error Resume Next
        For Each vTemp In vShellWindow
            '查找IE窗口
            If TypeName(vTemp.document) = "HTMLDocument" Then
                If vTemp.document.Title = "欢迎来到CSDN技术社区" Then
                    For Each vWebBrowser In vTemp.document.getElementsByTagName("frame")
                        If vWebBrowser.document.Title = "社区Logo" Then Exit For
                    Next
                End If
            End If
        Next
        '查找登录或注销链接
        For Each vTemp In vWebBrowser.document.getElementsByTagName("A")
            If TypeName(vTemp) = "HTMLAnchorElement" Then Exit For
        Next
        vTemp.Click '点击链接
    End SubPrivate Sub Form_Load()
        Dim vIE As New InternetExplorer
        vIE.navigate "http://community.csdn.net/"
        vIE.Visible = True
    End Sub
    实际上Frame就是WebBrowser。