VB调用webbrowser技巧集

1、获得浏览器信息:

Private Sub Command1_Click()
   WebBrowser1.Navigate "http://www.tianzhigang.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"

 

3、向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"

 

其中方法3是采用了调用execCommand并且传递控制命令的方法,通过这种方法还可以插入图片等页面元素,详情可以参考MSDN的execCommand命令。

 

4、页面滚动:


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

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

 

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

 

 

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

Private Sub Command1_Click()
   WebBrowser1.GoForward
End Sub

Private Sub Command2_Click()
   WebBrowser1.GoBack
End Sub

Private Sub Form_Load()
   WebBrowser1.Navigate "http://www.tianzhigang.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

 

上面的command1是前进按钮,command2是后退按钮。

 

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

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

 


7、如何获得网页中被选中部分的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.tianzhigang.com"
End Sub
 



上一篇: 百度关键字采集器v1.2正式发布!
下一篇: vb编程picturebox的2个重要属性
文章来自: 本站原创
引用通告: 查看所有引用 | 我要引用此文章
Tags: vb
相关日志:
评论: 0 | 引用: 0 | 查看次数: 3479
发表评论
昵 称:
密 码: 游客发言不需要密码.
邮 箱: 邮件地址支持Gravatar头像,邮箱地址不会公开.
网 址: 输入网址便于回访.
内 容:
验证码:
选 项:
虽然发表评论不用注册,但是为了保护您的发言权,建议您注册帐号.
字数限制 1000 字 | UBB代码 开启 | [img]标签 关闭

 广告位

↑返回顶部↑