首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

WebBrowser的Document_Complete 为什么会多次触发,该怎么处理

2012-05-11 
WebBrowser的Document_Complete 为什么会多次触发FORM_LOAD的代码是Navigate ablout:blank然后按钮打开

WebBrowser的Document_Complete 为什么会多次触发
FORM_LOAD
的代码是
Navigate "ablout:blank"

然后按钮打开一个网页

我在Document_Complete放了一个计数的变量

浏览完毕后
Document_Complete 一共触发了3次?为什么呢?

可以用别的更准确的事件吗?

[解决办法]
因为html页面包括了框架
[解决办法]
frame或者frameset标签导致
[解决办法]
以下是网上找来的,不知可不可以用:


至于如何解决最困扰开发人员的网页多个IFrame或Frame引发的_DocumentComplete事件被重复调用的问题的解决方案其实很简单,只要一行代码就可以了,如下例程:

Private Sub WebBrowser1_DocumentComplete(ByVal pDisp As Object, URL As Variant) 
If (pDisp Is WebBrowser1.Object) Then 
Debug.Print "本次触发是WebBrowser窗口所触发,而非里面的Frame" 
End If 
End Sub 

怎么说呢,pDisp参数的起名应该说有点怪,因为正是它让开发人员摸不着头脑,如果名为:dWindow As Object,那大家可能一眼就看出来是表示哪个窗口触发的参数,哈哈,不能怪别人了,只能说我们不够细心。

热点排行