回 帖 发 新 帖 刷新版面

主题:极难WebBrowser按鈕問題(vb2008)

按確定我用這個
WebBrowser1.Document.DomDocument.All("btn_ok").Click()
如果要按网页上的radiobutton要怎做??有3個,
增援,攻擊:正常,攻擊:搶奪,
在原始碼中,我找到這3個,
<tr>
                        <td class="sel"><label><input type="radio" class="radio" name="c" value="2" checked /> 增援</label></td>
                        <td class="vil"><span>村莊:</span><input type="text" class="text" name="dname" value="" maxlength="20" /></td>
                </tr>
                <tr>
                        <td class="sel"><label><input type="radio" class="radio" name="c" value="3"  /> 攻擊:正常</label></td>
                        <td class="or">或</td>
                </tr>
                <tr>
                        <td class="sel"><label><input type="radio" class="radio" name="c" value="4"  /> 攻擊:搶奪</label></td>
                        <td class="target">

回复列表 (共2个回复)

沙发

VB6 Code。2008也应该差不多,只要找到你需要操作的html元素就好办了。
[code=c]
'//! 添加WebBrowser控件,引用Microsoft HTML Object Library。
Private Function clickRadio(ByVal strText As String) As Long
Dim doc As HTMLDocument
Dim es As IHTMLElementCollection
Dim e As IHTMLElement

Set doc = Web1.Document    'Web1为webBrowser控件

Set es = doc.getElementsByName("c")
'Debug.Print es.length
For Each e In es
    If e.parentElement.innerText = strText Then
        'e.setAttribute "checked", "true"
        e.Click
        Exit For
    End If
Next

Set e = Nothing
Set es = Nothing
Set doc = Nothing
End Function

Private Sub Command1_Click()
clickRadio " 攻擊:正常"
End Sub
[/code]

板凳

当vb工程调用了WebBrowser控件后,再次打开这个工程,就会出现错误提示:
文件未找到: 'c:\windows\sytem32\ieframe.DLL\1'--继续加载工程吗?
点“是”后就发现以前的WebBrowser 控件没有了,而且再次加载也会提示相同错误。 在网上查找了一下相关资料:说是由于ie7.0的bug引起的。                                                                         解决方法(将下面存为一个REG文件,双击并导入,再试尝试打开工程,就没有问题了):
windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\TypeLib\{EAB22AC0-30C1-11CF-A7EB-0000C05BAE0B}] 
[HKEY_CLASSES_ROOT\TypeLib\{EAB22AC0-30C1-11CF-A7EB-0000C05BAE0B}\1.1] 
@="Microsoft Internet Controls" 
[HKEY_CLASSES_ROOT\TypeLib\{EAB22AC0-30C1-11CF-A7EB-0000C05BAE0B}\1.1\0] 
[HKEY_CLASSES_ROOT\TypeLib\{EAB22AC0-30C1-11CF-A7EB-0000C05BAE0B}\1.1\0\win32] 
@="C:\\windowS\\system32\\ieframe.DLL"
我试了怎么没用?请教。。。

我来回复

您尚未登录,请登录后再回复。点此登录或注册