本帖最后由 盗梦 于 2015-4-15 08:58 编辑
最后研究 Access 和 VB中调用webbrowser浏览器控件,所以在网上搜索很多webbrowser浏览器控件编程相关的技巧,收集了各种有用的代码,与大家一起分享一下,有些不错的就复制过来,具体原文出处不知道了。
Access及VB调用webbrowser技巧集1
1、获得浏览器信息:
Private Sub Command1_Click()
WebBrowser1.Navigate "http://www.access-cn.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.access-cn.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.access-cn.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.access-cn.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("<font color=green>登陆成功</font>")
else
Response.Write("<font color=red>非法登陆用户!</red>")
end if
%>
<HTML>
<HEAD>
<META NAME="GENERATOR" charset="gb2312" Content="Microsoft
Visual Studio 6.0">
</HEAD>
<BODY>
<P> </P>
</BODY>
</HTML>
|