步骤 说明
GoBack 无异于IE的“退后”旋钮,使你在目前历史列表中退后一项
GoForward 等同于IE的“前行”旋钮,使你在目前历史列表中前行一项
GoHome 等同于IE的“首页”旋钮,联接用户默许的首页
GoSearch 无异于IE的“搜寻”旋钮,联接用户默许的搜寻页面
Navigate 联接到指定的URL
Refresh 刷新现阶段页面
Refresh二 同上,只是可以指定刷新级别,所指定的刷新级别的值来源于RefreshConstants枚举表,
该表定义在ExDisp.h中,可以指定的不同值如次:
REFRESH_NORMAL 实施简略的刷新,不将HTTP pragma: no-cache毛发送给服务器
REFRESH_IFEXPIRED 惟独在网页逾期后才开展简略的刷新
REFRESH_CONTINUE 仅作内部运用。在MSDN里写着DO NOT USE! 切莫运用
REFRESH_COMPLETELY 将包孕pragma: no-cache头的请求发送到服务器
Stop 无异于IE的“终止”旋钮,终止现阶段页面及其内容的载入
属性 说明
Application 如其该对象有效,则回到主持WebBrowser控件的应用程序兑现的自动化对象(IDispatch)。如果在宿主对象中自动化对象无效,这个程序将回来WebBrowser
控件的自动化对象
Parent 回来WebBrowser控件的父自动化对象,通常是一个器皿,比如是宿主或IE窗口
Container 回来WebBrowser控件器皿的自动化对象。正常该值与Parent属性回到的值雷同
Document 为活动的文档回到自动化对象。如其HTML目前正被展示在WebBrowser中,则
Document属性提供对DHTML Object Model的访问路径
TopLevelContainer 回来一个Boolean值,表明IE是不是是WebBrowser控件高层器皿,是便回来true
Type 回到已被WebBrowser控件加载的对象的部类。比如:如若加载.doc资料,就会返
来Microsoft Word Document
Left 回到或设立WebBrowser控件窗口的内部左面与器皿窗口左面的距离
Top 回来或设立WebBrowser控件窗口的内部左首与器皿窗口顶边的距离
Width 回来或设立WebBrowser窗口的宽度,以像素为组织
Height 回到或设立WebBrowser窗口的高度,以像素为机构
LocationName 回到一个字符串,该字符串包含着WebBrowser现阶段展示的资源的姓名,如若资源
是网页乃是网页的题目;如果是资料或文件夹,乃是资料或文件夹的姓名
LocationURL 回到WebBrowser现阶段在展示的资源的URL
Busy 回来一个Boolean值,说明WebBrowser目前是不是在加载URL,如若回来true
就可以施用stop步骤来撤消在实施的访问操作
http://hi.baidu.com/lovemoe/creat/blog/
Document 属性
回到包孕 HTML 文档姓名的字符串。
Silent 属性
禁止展示任何部类的对话框。
DocumentText属性
获取或设立现阶段网页的 HTML 内容
Url 属性
获取或设立现阶段网页的 URL。设立该属性时,会将该控件定位到新的 URL。
DocumentCompleted 事件
网页完成加载时产生。
BeforeNavigate 事 件
开 始 导 航 前 发 生。 1 般 在 此 获 取 完 整 的URL 字 符 串。
GoBack GoForward GoHome步骤
定位到历史记录中的上一页和下一页和首页。
Refresh步骤
刷新目前页
Navigate 步骤
定位到指定的 URL。Navigate 方 法 的 语 法 格 式 为:
[Flags,][TargetFrameName,][PostData,][Headers]
URL 参数
Uniform Resource Locator获 得 导 航 用 的 标 准URL 字 符 串。 例 如: 它 会 将”www.MicroSoft.Com” 从 动 翻 译 为”http://www.MicroSoft.Com”.
webBrowser运用
http://hi.baidu.com/lovemoe/creat/blog/
摘引Microsoft HTML Object Library和Microsoft Internet Controls控件
'获取Document对象
Set WBD = WebBrowser一.Document
获取网页源代码
WebBrowser一.Document.body.createtextrange().htmltext
最简略的登陆
Set WBD = WebBrowser一.Document
WBD.body.All("name").Value =" "
WBD.body.All("PASS").Value = " "
WBD.Forms(零).submit
调用带参数的javascript
WBD.parentWindow.execScript "document.login.submit()", "javascript"
障蔽网页的alert对话框
Private Sub WebBrowser一_NavigateComplete二(ByVal pDisp As Object, URL As Variant)
pDisp.Document.parentWindow.execScript "window.alert=null;"
End Sub
遍历
For mIndex = 零 To mDocument.Forms.length - 一 '输出每个FORM
Print mDocument.Forms(mIndex).Name
lstLinks.AddItem "输出联接"
For mIndexEx = 零 To mDocument.links.length - 一 '输出联接
lstLinks.AddItem mDocument.links(mIndexEx)
Next
lstLinks.AddItem "图片地址"
For mIndexEx = 零 To mDocument.images.length - 一 '输出图片
lstLinks.AddItem mDocument.images(mIndexEx).src '图片地址
Next
Next
数据下载完毕后操作
Private Sub WebBrowser一_DocumentComplete(ByVal pDisp As Object, URL As Variant)
If URL <> "http://www.baidu.com/" Then Exit Sub
Do
If Not WebBrowser一.Busy Then Exit Do
DoEvents
Loop
取得浏览器信息:
Private Sub Command一_Click()
WebBrowser一.Navigate "http://www.applevb.com"
End Sub
Private Sub Command二_Click()
Dim oWindow
Dim oNav
Set oWindow = WebBrowser一.Document.parentWindow
Set oNav = oWindow.navigator
Debug.Print oNav.userAgent
Set oWindow = Nothing
Set oNav = Nothing
End Sub
(点击Command一浏览网页,点击Command二在立地窗口中输出浏览器信息。)
弹出Webbrowser讯息窗口
Dim oWindow
Set oWindow = WebBrowser一.Document.parentWindow
oWindow.confirm "abcd"
页面滚动:
Private Sub Command二_Click()
WebBrowser一.Document.parentwindow.scrollby 零, 30
End Sub
Private Sub Form_Load()
WebBrowser一.Navigate "http://www.applevb.com"
End Sub
(点击Command二就可以使目前页面临下滚动30像素)
判断页面是不是可此前进退后
Private Sub Command一_Click()
WebBrowser一.GoForward
End Sub
Private Sub Command二_Click()
WebBrowser一.GoBack
End Sub
Private Sub Form_Load()
WebBrowser一.Navigate "http://www.applevb.com"
End Sub
Private Sub WebBrowser一_CommandStateChange(ByVal Command As Long, ByVal Enable As Boolean)
If (Command = CSC_NAVIGATEBACK) Then
Command二.Enabled = Enable
End If
If (Command = CSC_NAVIGATEFORWARD) Then
Command一.Enabled = Enable
End If
End Sub
向Webbrowser中写下HTML内容的几种步骤:
首先在Form_Load中加入
WebBrowser一.Navigate "about:blank"
保准Webbrowser一可用
步骤一:
Dim s As String
Dim stream As IStream
s = ""
s = s + ""
s = s + ""
s = s + "hello world "
s = s + ""
s = s + "
WebBrowser一.Document.Write s
步骤二:
Dim o
Set o = WebBrowser一.Document.selection.createrange
Debug.Print o
If (Not o Is Nothing) Then
o.pasteHTML "哈哈哈"
Set o = Nothing
End If
步骤三:
'安插文本框
Dim o
Set o = WebBrowser一.Document.selection.createrange
o.execCommand "InsertTextArea", False, "xxx"
何以使网页不出现滚动条:
Private Sub mnuScroll一_Click()
@#注意:务须在网页完全展示以后才可以运作
WebBrowser一.Document.body.Scroll = "no" @#不展示滚动条的办法
End Sub
Private Sub mnuScroll二_Click()
@#注意:务必在网页完全展示以后才可以运作
WebBrowser一.Document.body.Scroll = "Auto" @#展示滚动条的办法
End Sub
何以取得网页中被选中一部分的HTML:
Private Sub Command一_Click()
Dim objSelection
Dim objTxtRange
Set objSelection = WebBrowser一.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()
WebBrowser一.Navigate "http://www.applevb.com"
End Sub
==================
运用WebBrowser的Navigator也许Navigator二步骤打开一个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.Navigate二(strURL, 64, "_blank", strFormData,
"hello")
End Sub
asp源码:
*********************************************************************
Option Explicit
Private Sub Command一_Click()
Dim szValue As String
WebBrowser一.Document.body.innerHTML = "
method=post action=http://地址/xxx.php>
"
WebBrowser一.Document.Forms("post").submit
End Sub
Private Sub Form_Load()
WebBrowser一.Navigate二 "about:blank"
End Sub
Top
********************************************************************
在WebBrwoser控件里提供的Navigate或许Navigate二步骤中提供了传送数据
的参数,调用形式为:WebBrowser一.Navigate二(URL,[Flags],
[TargetFrameName],[PostData],[Headers])
内中PostData参数乃是一个交付参数目字符串,比如"name=aaa&password=123",
但问题是为何这个步骤并不是有效的,服务器端不能获得数据?
如其这个步骤是有效的话就不需要用一段html代码模拟这种调用了。
下边代码能检测出程序post出去的讯息
Private Sub WebBrowser一_BeforeNavigate二(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 控件,展示 .GIF 卡通?
要有一定的网页常识(HTML、JavaScript、CSS)
注意细节:
没"滚动条"和"鼠标右键弹出的 IE 前后文菜单",".HTM 源文件" ...
我写了一个,成效还真不错!
'Objects: Form一、Command一、CommonDialog一、WebBrowser一
Option Explicit
Private Sub Command一_Click()
CommonDialog一.ShowOpen
If VBA.Len(VBA.Trim(CommonDialog一.FileName)) > 零 Then
Dim p As stdole.StdPicture
Dim sPath As String
sPath = VBA.Trim(VBA.Trim(CommonDialog一.FileName))
Set p = VB.LoadPicture(sPath)
WebBrowser一.Width = p.Width * 16 / 26
WebBrowser一.Height = p.Height * 16 / 26
' WebBrowser一.Navigate "about:blank"
WebBrowser一.Document.open
WebBrowser一.Document.writeln ""
WebBrowser一.Document.writeln ""
WebBrowser一.Document.writeln ""
WebBrowser一.Document.writeln ""
WebBrowser一.Document.writeln "WebBrowser一.Document.writeln "
WebBrowser一.Document.writeln "WebBrowser一.Document.writeln "
"
WebBrowser一.Document.writeln ""
WebBrowser一.Document.writeln ""
End If
End Sub
Private Sub Form_Load()
Command一.Caption = "&Open"
WebBrowser一.Navigate "about:blank"
WebBrowser一.Document.open
WebBrowser一.Document.writeln ""
WebBrowser一.Document.writeln ""
WebBrowser一.Document.writeln ""
WebBrowser一.Document.writeln ""
WebBrowser一.Document.writeln "WebBrowser一.Document.writeln ""
WebBrowser一.Document.writeln ""
WebBrowser一.Document.Close
End Sub
WebBrowser控件说明
步骤 说明
GoBack 等同于IE的“退后”旋钮,使你在现阶段历史列表中退后一项
GoForward 等同于IE的“前行”旋钮,使你在现阶段历史列表中前行一项
GoHome 无异于IE的“首页”旋钮,联接用户默许的首页
GoSearch 无异于IE的“搜寻”旋钮,联接用户默许的搜寻页面
Navigate 联接到指定的URL
Refresh 刷新目前页面
Refresh二 同上,只是可以指定刷新级别,所指定的刷新级别的值来源于RefreshConstants枚举表,
该表定义在ExDisp.h中,可以指定的不同值如次:
REFRESH_NORMAL 施行容易的刷新,不将HTTP pragma: no-cache毛发送给服务器
REFRESH_IFEXPIRED 惟独在网页逾期后才开展简略的刷新
REFRESH_CONTINUE 仅作内部运用。在MSDN里写着DO NOT USE! 切莫应用
REFRESH_COMPLETELY 将包孕pragma: no-cache头的请求发送到服务器
Stop 等同于IE的“终止”旋钮,终止目前页面及其内容的载入
属性 说明
Application 如若该对象有效,则回到主持WebBrowser控件的应用程序兑现的自动化对象(IDispatch)。如果在宿主对象中自动化对象无效,这个程序将回到WebBrowser
控件的自动化对象
Parent 回来WebBrowser控件的父自动化对象,通常是一个器皿,比如是宿主或IE窗口
Container 回到WebBrowser控件器皿的自动化对象。正常该值与Parent属性回到的值雷同
Document 为活动的文档回到自动化对象。如其HTML现阶段正被展示在WebBrowser中,则
Document属性提供对DHTML Object Model的访问路径
TopLevelContainer 回来一个Boolean值,表明IE是不是是WebBrowser控件中上层器皿,是便回来true
Type 回来已被WebBrowser控件加载的对象的门类。比如:如其加载.doc资料,就会返
来Microsoft Word Document
Left 回来或设立WebBrowser控件窗口的内部左侧与器皿窗口左面的距离
Top 回到或设立WebBrowser控件窗口的内部左侧与器皿窗口顶边的距离
Width 回来或设立WebBrowser窗口的宽度,以像素为部门
Height 回来或设立WebBrowser窗口的高度,以像素为组织
LocationName 回来一个字符串,该字符串包含着WebBrowser目前展示的资源的姓名,如其资源
是网页便是网页的题目;如果是资料或文件夹,便是资料或文件夹的姓名
LocationURL 回来WebBrowser现阶段在展示的资源的URL
Busy 回来一个Boolean值,说明WebBrowser现阶段是不是在加载URL,如若回来true
就可以应用stop步骤来取消在施行的访问操作
WebBrowser 的事件
Private Events Description
BeforeNavigate二 领航发作前激起,刷新时不激起
CommandStateChange 应下令的激活状态改变时激起。它表明几时激活或封闭Back和Forward
菜单项或旋钮
DocumentComplete 应整个文档完成是激起,刷新页面不激起
DownloadBegin 应某项下载操作已经开始后激起,刷新也可激起此事件
DownloadComplete 应某项下载操作已经完成后激起,刷新也可激起此事件
NavigateComplete二 领航完成后激起,刷新时不激起
NewWindow二 在创造新窗口早先激起
OnFullScreen 应FullScreen属性改变时激起。该事件采取VARIENT_BOOL的一个输
进参数来指示IE是全屏展示形式(VARIENT_TRUE)仍是普普通通展示形式(VARIENT_FALSE)
OnMenuBar 改变MenuBar的属性时激起,标志参数是VARIENT_BOOL部类的。
VARIANT_TRUE是足见,VARIANT_ FALSE是暗藏
OnQuit 无论用户封锁浏览器仍是开发者调用Quit步骤,应IE退出时就会激起
OnStatusBar 与OnMenuBar调用步骤雷同,标志状态栏是不是显见。
OnToolBar 调用步骤同上,标志工具栏是不是足见。
OnVisible 统制窗口的足见或掩藏,也运用一个VARIENT_BOOL门类的参数
StatusTextChange 如若要改变状态栏中的文字,这个事件就会被激起,但它并不顾会程序是不是有状态栏
TitleChange Title有效或改变时激起
WEBBROWSER 技艺(保藏)
看到很多对于WebBrowser控件禁止右键的提问,恢复的步骤很多,其中有谈到应用微软提供的 Webbrowser扩张COM服务器对象(WBCustomizer.dll),但是该步骤在我们念施用Webbrowser编者网页(Webbrowser一.Document.execCommand editMode)的时分有很多弊病,例如不能展示选中的文本等。另有点步骤也就不要一一列举了。
这会儿我想谈到的是至于MSHTML.HTMLDocument
引述Microsoft HTML OBject Library
Rem #窗体代码#
Dim WithEvents M_Dom As MSHTML.HTMLDocument
Private Function M_Dom_oncontextmenu() As Boolean
M_Dom_oncontextmenu = False
End Function
Private Sub Webbrowser一_DownloadComplete()
Set M_Dom = Webbrowser一.Document
End Sub
Rem 好了,右键菜单没了
=======================================================================
控件调用和取得收藏夹里头
大抵用 specialfolder(六 ) 就可以失去收藏夹的途径, 其后你可以用dir去循环读入每个索引,其后dir里头的file, file的名字便是你要的归藏的名字, 途径可以自各儿依据从上头失去的途径去失去.
如其你不要dir也可以用vb的dir控件.
Private Type SHITEMID
cb As Long
abID As Byte
End Type
Public Type ITEMIDLIST
mkid As SHITEMID
End Type
Public Function SpecialFolder(ByRef CSIDL As Long) As String
locate the favorites folder
Dim R As Long
Dim sPath As String
Dim IDL As ITEMIDLIST
Const NOERROR = 零
Const MAX_LENGTH = 260
R = SHGetSpecialFolderLocation(MDIMain.hwnd, CSIDL, IDL)
If R = NOERROR Then
sPath = Space$(MAX_LENGTH)
R = SHGetPathFromIDList(ByVal IDL.mkid.cb, ByVal sPath)
If R Then
SpecialFolder = Left$(sPath, InStr(sPath, vbNullChar) - 一)
End If
End If
End Function
================================================================
是的,webbrowser本生是一个控件, 你要它全屏,乃是要它所在的窗体全屏, 可以用setwindowlong撤除窗体的 title, 用Call ShowWindow(FindWindow(Shell_traywnd, ), 零) 掩藏tray,乃是底下那个包孕开始那一起. 用Call ShowWindow(FindWindow(Shell_traywnd, ), 九) 回复. 够详细了吧.
其后在form一.windowstate = 二 就可以了.
====================================================================
取舍网页上的内容。
Private Sub Command一_Click()
请先选中一些内容
Me.WebBrowser一.ExecWB OLECMDID_COPY, OLECMDEXECOPT_DODEFAULT
MsgBox Clipboard.GetText
End Sub
=============================================================
用IE来下载资料
Private Declare Function DoFileDownload Lib shdocvw.dll (ByVal lpszFile As String) As Long
Private Sub Command一_Click()
Dim sDownload As String
sDownload = StrConv(Text一.Text, vbUnicode)
Call DoFileDownload(sDownload)
End Sub
保留webbrowser中的HTML内容
Dim oPF As IPersistFile
Set oPF = WebBrowser一.Document
oPF.Save "TheFileNameHere.htm", False
WebBrowser一.ExecWB怎么用
下部是我测试的参数
WB.ExecWB(四,一)
四,一 封存网页
四,二 保留网页(可以重新命名)
六,一 直接打印
六,二 直接打印
七,一 打印预览
七,二 打印预览
八,一 抉择参数
八,二 取舍参数
十,一 查看页面属性
十,二 查看页面属性
17,一 全选
17,二 全选
22,一 从新载入现阶段页
22,二 从新载入现阶段页
webbrowser确定对话框的准确步骤
webbrowser确定窗口对话框
某些网页鉴于各种思忖会弹出对话框要求信息确认,往往会中止我们的webbrowser进程,可以施用如次步骤:
一.加入Microsoft Html Object
二.加入话语
Private Sub WebBrowser一_NavigateComplete二(ByVal pDisp As Object, URL As Variant)
Dim obj As HTMLDocument
Set obj = pDisp.Document
obj.parentWindow.execScript "function showModalDialog(){return;}" '对showModalDialog唤起的对话框进展确定
End Sub
而confirm挑动的会话确定框可用confirm轮换showModalDialog即可,Alert同等理~
WebBrowser获得网页源码Private Sub Command一_Click()
WebBrowser一.Navigate "http://www.sdqx.gov.cn/sdcity.php"
End Sub
Private Sub WebBrowser一_DownloadComplete()
'页面下载完毕
Dim doc, objhtml
Set doc = WebBrowser一.Document
Set objhtml = doc.body.createtextrange()
If Not IsNull(objhtml) Then
Text一.Text = objhtml.htmltext
End If
End Sub
我用WebBrowser获得网页源码,直接运作通常,但在编译后疏失
揭示:实时差错“91” Object 变量或 with 块变量没设立
可能是没下载完所致,
Private Sub WebBrowser一_DownloadComplete()
if webbrowser.busy=false then
Dim doc, objhtml
Set doc = WebBrowser一.Document
Set objhtml = doc.body.createtextrange()
If Not IsNull(objhtml) Then
Text一.Text = objhtml.htmltext
End If
end if
End Sub
a.htm
----------------------
asdasdsad
建立一个EXE再窗体上置放一个WebBrowser控件,易名为web
Private Sub Form_Load()
web.Navigate "c:/a.htm"
DoEvents
Do
While
web.Busy
DoEvents
Loop
Set web.Document.ParentWindow.obj = Me
End Sub
Public Sub w()
MsgBox "haha"
End Sub
post形式交付数据
Option Explicit
Private Sub Command一_Click()
Dim szValue As String
WebBrowser一.Document.body.innerHTML = "
"
WebBrowser一.Document.Forms("post").submit
End Sub
Private Sub Form_Load()
WebBrowser一.Navigate二 "about:blank"
End Sub
本文来源:
我的异常网
Java Exception
Dotnet Exception
Oracle Exception
3116 - checkout报error
3117 - HibernateException
3118 - eclipse3.2启动报错
3119 - Function is not supported
3120 - STRUTS1.1中html:errors中文不能正确显示
3121 - html:errors中文不能正确显示
3122 - ActionErrors如何在页面上显示
3123 - ActionErrors没有提示信息
3124 - struts关于html:text错误
3125 - Struts截获response.sendError
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/liangdiwei/archive/2010/01/04/5132480.aspx