vb6的webbrowser控件问题

vb6的webbrowser控件问题我用的是vb6精简版。我先用webBrowser1.Document.Body.InnerHtml获得源码,再用replace修改后并... vb6的webbrowser控件问题我用的是vb6精简版。我先用webBrowser1.Document.Body.InnerHtml获得源码,再用replace修改后并重新返回webBrowser1.Document.Body.InnerHtml。可以是可以,但是往往会导致网页无响应。甚至执行a=webBrowser1.Document.Body.InnerHtml
webBrowser1.Document.Body.InnerHtml=a。这样没有任何的修改的代码也会导致网页失去响应。究竟哪里出问题了。求大神帮忙解决。万分感谢。
展开
 我来答
新疆新华电脑
2018-05-24 · TA获得超过118个赞
知道小有建树答主
回答量:75
采纳率:46%
帮助的人:10.2万
展开全部
如果对您有帮助,给个采纳好吗,谢谢
提交表单form1:
Private Sub Command1_Click()
WebBrowser1.Document.Forms("form1").submit
End Sub

将form1中的名为u的属性设为不可用:
Private Sub Command2_Click()
WebBrowser1.Document.Forms("form1").u.setAttribute "disabled", "disabled"
End Sub
将form1中的名为u的Text框中的内容设为abc:
Private Sub Command2_Click()
WebBrowser1.Document.Forms("form1").u.setAttribute "value", "abc"
End Sub
遍历所有标签:
For i = 0 To WebBrowser1.Document.All.length - 1
If UCase(WebBrowser1.Document.All(i).tagName) = UCase("div") Then
End If
Next i

1、获得浏览器信息:
Private Sub Command1_Click()
WebBrowser1.Navigate "http://www.applevb.com"
End Sub
Private Sub Command2_Click()
Dim oWindow
Dim oNav
Set oWindow = WebBrowser1.Document.parentWindow
Set oNav = oWindow.navigator
Debug.Print oNav.userAgent
Set oWindow = Nothing
Set oNav = Nothing
End Sub
点击Command1浏览网页,点击Command2在立即窗口中输出浏览器信息。

2、弹出Webbrowser消息窗口

Dim oWindow
Set oWindow = WebBrowser1.Document.parentWindow
oWindow.confirm "abcd"

VB调用webbrowser技巧集2

向Webbrowser中写入HTML内容的几种方法

首先在Form_Load中加入

WebBrowser1.Navigate "about:blank"

确保Webbrowser1可用

方法1:

Dim s As String
Dim stream As IStream

s = ""
s = s + ""
s = s + ""
s = s + "

hello world

"
s = s + ""
s = s + "
WebBrowser1.Document.Write s

方法2:

Dim o

Set o = WebBrowser1.Document.selection.createrange
Debug.Print o
If (Not o Is Nothing) Then
o.pasteHTML "哈哈"
Set o = Nothing
End If

方法3:

'插入文本框
Dim o

Set o = WebBrowser1.Document.selection.createrange

o.execCommand "InsertTextArea", False, "xxx"

vb调用Webbrowser技巧集3
1、页面滚动:

Private Sub Command2_Click()
WebBrowser1.Document.parentwindow.scrollby 0, 30
End Sub

Private Sub Form_Load()
WebBrowser1.Navigate "http://www.applevb.com"
End Sub

点击Command2就可以使当前页面向下滚动30像素

2、判断页面是否可以前进后退

Private Sub Command1_Click()
WebBrowser1.GoForward
End Sub

Private Sub Command2_Click()
WebBrowser1.GoBack
End Sub

Private Sub Form_Load()
WebBrowser1.Navigate "http://www.applevb.com"
End Sub

Private Sub WebBrowser1_CommandStateChange(ByVal Command As Long, ByVal Enable As Boolean)
If (Command = CSC_NAVIGATEBACK) Then
Command2.Enabled = Enable
End If
If (Command = CSC_NAVIGATEFORWARD) Then
Command1.Enabled = Enable
End If
End Sub

VB调用webbrowser技巧集4

1、如何使网页不出现滚动条:

Private Sub mnuScroll1_Click()
@#注意:必须在网页完全显示之后才可以运行
WebBrowser1.Document.body.Scroll = "no" @#不显示滚动条的办法
End Sub
Private Sub mnuScroll2_Click()
@#注意:必须在网页完全显示之后才可以运行
WebBrowser1.Document.body.Scroll = "Auto" @#显示滚动条的办法
End Sub

2、如何获得网页中被选中部分的HTML:

Private Sub Command1_Click()
Dim objSelection
Dim objTxtRange

Set objSelection = WebBrowser1.Document.selection
If Not (objSelection Is Nothing) Then
Set objTxtRange = objSelection.createRange
If Not (objTxtRange Is Nothing) Then
Debug.Print objTxtRange.htmlText

Set objTxtRange = Nothing
End If
Set objSelection = Nothing
End If
End Sub

Private Sub Form_Load()
WebBrowser1.Navigate "http://www.applevb.com"
End Sub

Navigate 方 法 的 语 法 格 式 为:

WebBrowser 控 件 名.Navigate URL
[Flags,][TargetFrameName,][PostData,][Headers]

---- WebBrowser 控 件 支 持 的 主 要 方 法 有:

GoBack — — — 回 退 到 上 一 屏。
GoForward — — — 进 入 到 下 一 屏。
GoHome — — — 回 家。 即 回 到 主 页。
Stop — — — 停 止 导 航。
Refresh — — — 刷 新。
Navigate — — — 导 航。

---- WebBrowser 控 件 所 响 应 的 事 件:

---- BeforeNavigate 事 件 — — — 在 开 始 导 航 前 发 生。 一 般 在 此 获 取 完 整 的URL 字 符 串。

---- WebBrowser 控 件 最 主 要 的 参 数:

---- URL — — — 获 得 导 航 用 的 标 准URL 字 符 串。 例 如: 它 能 将”www.MicroSoft.Com” 自 动 翻 译 为”http://www.MicroSoft.Com”.URL 是Uniform Resource Locator 的 缩 写, 是 在Internet 的WWW 服 务 程 序 上 用 于 指 定 信 息 位 置 的 表 示 方 法。

使用WebBrowser的Navigator或者Navigator2方法打开一个asp文档并且传递

参数进去,但是asp文档无法获得参数,请教是什么原因?

vb源码:
Private Sub cmdSubmit_Click()
Dim strURL As String, strFormData As String
Dim strData As String
strURL = Trim$(txtURL.Text)
strFormData = "name=" & Trim$(txtName.Text) &

"&password=" & Trim$(txtPassword.Text)
Call WBTest.Navigate2(strURL, 64, "_blank", strFormData,

"hello")
End Sub

asp源码:

<%@ Language=VBScript %>
<%
dim strName
dim strPassword
strName=Trim(Request.Form("name"))
strPassword=Trim(Request.Form("password"))
Response.Write(strName)
Response.Write(strPassword)
if strName="KingZhang" and strPassword="123456" then
Response.Write("登陆成功")
else
Response.Write("非法登陆用户!")
end if

%>

*********************************************************************

Option Explicit

Private Sub Command1_Click()
Dim szValue As String
WebBrowser1.Document.body.innerHTML = "

method=post action=http://地址/xxx.php>
"
WebBrowser1.Document.Forms("post").submit
End Sub

Private Sub Form_Load()
WebBrowser1.Navigate2 "about:blank"
End Sub
Top

********************************************************************

请问:在WebBrwoser控件里提供的Navigate或者Navigate2方法中提供了传递数据

的参数,调用方式为:WebBrowser1.Navigate2(URL,[Flags],

[TargetFrameName],[PostData],[Headers])
其中PostData参数就是一个提交参数字符串,例如"name=aaa&password=123",

但问题是为什么这个方法并不是有效的,服务器端不能取得数据?
如果这个方法是有效的话就不需要用一段html代码模拟这种调用了。

下面代码能检测出程序post出去的消息

Private Sub WebBrowser1_BeforeNavigate2(ByVal pDisp As Object, URL As Variant, Flags As Variant, TargetFrameName As Variant, PostData As Variant, Headers As Variant, Cancel As Boolean)
MsgBox PostData
End Sub

WebBrowser的8个方法和13个属性

WebBrowser的8个方法和13个属性,以及它们的功能:

方法 说明
GoBack 相当于IE的“后退”按钮,使你在当前历史列表中后退一项

GoForward 相当于IE的“前进”按钮,使你在当前历史列表中前进一项
GoHome 相当于IE的“主页”按钮,连接用户默认的主页
GoSearch 相当于IE的“搜索”按钮,连接用户默认的搜索页面
Navigate 连接到指定的URL
Refresh 刷新当前页面
Refresh2 同上,只是可以指定刷新级别,所指定的刷新级别的值来自RefreshConstants枚举表,
该表定义在ExDisp.h中,可以指定的不同值如下:
REFRESH_NORMAL 执行简单的刷新,不将HTTP pragma: no-cache头发送给服务器
REFRESH_IFEXPIRED 只有在网页过期后才进行简单的刷新
REFRESH_CONTINUE 仅作内部使用。在MSDN里写着DO NOT USE! 请勿使用
REFRESH_COMPLETELY 将包含pragma: no-cache头的请求发送到服务器
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
grace23450
2018-05-24 · TA获得超过1.3万个赞
知道大有可为答主
回答量:7081
采纳率:77%
帮助的人:2325万
展开全部
这个只支持ie加一个while do events loop
追答
多少
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式