WebBrowser控件详解与使用
"这篇文档是关于WebBrowser控件的详细说明,主要涵盖了在Windows应用程序中如何使用该控件来模拟浏览器的功能,包括导航、刷新、停止等操作,并介绍了与网页交互的一些关键属性和事件。" 在Windows编程中,WebBrowser控件是一个非常实用的组件,它允许开发者在桌面应用中嵌入网页浏览功能。这个控件基于Internet Explorer引擎,因此它支持大部分IE浏览器的功能。以下是WebBrowser控件的关键知识点: 1. 导航操作: - GoBack:使WebBrowser控件回退到上一个访问的页面。 - GoForward:前进到下一个访问的页面。 - GoHome:导航到浏览器的主页。 - GoSearch:打开搜索引擎并进行搜索。 - Navigate:载入指定的URL,这是最常见的导航方法。 - Navigate2:与Navigate类似,但提供了更多的选项,如POST数据或自定义请求头。 2. 刷新和停止: - Refresh:刷新当前页面,可以指定刷新模式,如REFRESH_NORMAL(默认刷新),REFRESH_IFEXPIRED(仅当页面过期时刷新),REFRESH_CONTINUE(忽略缓存,继续加载),REFRESH_COMPLETELY(清空缓存后刷新)。 - Stop:立即停止当前的页面加载。 3. 文档和对象模型: - Document:返回当前加载的HTML文档对象,可以通过DHTML Object Model进行交互,例如修改页面元素或执行JavaScript。 - TopLevelContainer:一个布尔值,表示是否为顶级容器。如果是,意味着WebBrowser控件可以直接与Internet Explorer引擎交互。 - Type:返回WebBrowser控件的类型信息,如".doc"代表Microsoft Word文档。 4. 属性: - LocationName:当前页面的非URL名称,通常为URL的部分路径。 - LocationURL:当前页面的完整URL。 - Busy:一个布尔值,表示WebBrowser控件是否正忙于加载页面。如果为true,可以防止用户执行其他操作。 - Object:返回底层的SHDocVwCtl.WebBrowser_V1对象,可以访问更多底层接口和方法。 - MenuBar, StatusBar, ToolBar, Visible:分别控制菜单栏、状态栏、工具栏的显示状态。 5. 事件: - BeforeNavigate2:在导航开始前触发,可以取消导航或更改导航参数。 - CommandStateChange:当命令状态改变时触发,如Back和Forward按钮的状态。 - DocumentComplete:当文档加载完成时触发,可在此事件中进行后续处理。 - DownloadBegin/DownloadComplete:标识下载过程的开始和结束。 - NavigateComplete2:导航完成后的事件,可用于处理加载错误或其他后处理工作。 - NewWindow2:在新窗口打开之前触发,可以控制是否在新窗口中打开链接。 这些知识点是开发中使用WebBrowser控件的基础,通过理解和利用这些功能,开发者可以创建出具有复杂网络交互的桌面应用程序。
■■方法 ==============================
▲GoBack 相当于IE的“后退”按钮,使你在当前历史列表中后退一项
▲GoForward 相当于IE的“前进”按钮,使你在当前历史列表中前进一项
▲GoHome 相当于IE的“主页”按钮,连接用户默认的主页
▲GoSearch 相当于IE的“搜索”按钮,连接用户默认的搜索页面
▲Navigate 连接到指定的 URL,并显示网页
▲Navigate2 与 Navigate 作用同?
▲Refresh 刷新当前页面
▲Refresh2 同上,只是可以指定刷新级别,所指定的刷新级别的值来自RefreshConstants枚举表,
该表定义在ExDisp.h中,可以指定的不同值如下:
REFRESH_NORMAL 执行简单的刷新,不将HTTP pragma: no-cache头发送给服务器
REFRESH_IFEXPIRED 只有在网页过期后才进行简单的刷新
REFRESH_CONTINUE 仅作内部使用。在MSDN里写着DO NOT USE! 请勿使用
REFRESH_COMPLETELY 将包含pragma: no-cache头的请求发送到服务器
▲Stop 相当于IE的“停止”按钮,停止当前页面及其内容的载入
■■属性===================================
▲Document 为活动的文档返回自动化对象。如果HTML当前正被显示在 Web1 中,则 Document 提供
对DHTML Object Model的访问途径。下面有详细介绍
▲TopLevelContainer 返回一个Boolean值,表明 IE 是否是 Web1 控件顶层容器,是就返回 true
▲Type 返回已被 Web1 控件加载的对象的类型。例如:
如果加载.doc文件,就会返回 Microsoft Word Document
▲LocationName 返回一个字符串,该字符串包含着 Web1 当前显示的资源的名称,
如果资源是网页就是网页的标题;
如果是文件或文件夹,就是文件或文件夹的名称
▲LocationURL 返回 Web1 当前正在显示的资源的 URL
▲Busy 返回一个Boolean值,说明 Web1 当前是否正在加载 URL,如果返回 true
就可以使用 stop 方法来撤销正在执行的访问操作
▲Object 设置返回一个显现网页的 SHDocVwCtl.WebBrowser_V1 对象。参见下文。
▲MenuBar
▲ToolBar
▲Visible
▲
■■事件===================================
▲BeforeNavigate2 导航发生前触发(打开网页前),刷新时不触发
▲CommandStateChange 当命令的激活状态改变时触发。它表明何时激活或关闭Back和Forward菜单项或按钮
▲DocumentComplete 当整个文档完成是触发,刷新页面不触发
▲DownloadBegin 当某项下载操作已经开始后触发,刷新也可触发此事件
▲DownloadComplete 当某项下载操作已经完成后触发,刷新也可触发此事件
▲NavigateComplete2 导航完成后触发,刷新时不触发
▲NewWindow2 弹出新窗口以前触发
可在此事件中设置 ppDisp 参数新网页显示对象,同时不会出现 SHDocVwCtl.WebBrowser_V1 的 NewWindow 事件
▲OnFullScreen 当 FullScreen 属性改变时触发。该事件采用 VARIENT_BOOL 的一个输入参数来指示 IE 是全
屏显示方式(VARIENT_TRUE)还是普通显示方式(VARIENT_FALSE)
▲OnMenuBar 改变 MenuBar 属性时触发,标示参数是 VARIENT_BOOL 类型的。
VARIANT_TRUE 可见,VARIANT_ FALSE 隐藏
▲OnQuit 无论是用户关闭浏览器还是开发者调用Quit方法,当IE退出时就会触发
▲OnStatusBar 改变 StatusBar 属性时触发,标示状态栏是否可见。
▲OnToolBar 改变 ToolBar 属性时触发,标示工具栏是否可见。
▲OnVisible 改变 Visible 属性时触发
▲StatusTextChange 控件的状态信息改变时触发。
▲TitleChange 网页标题改变时触发。参数 Text 是新标题,Web1.LocationName 属性是旧标题
■■SHDocVwCtl.WebBrowser_V1 对象==================
在窗体声明部分加入:Private WithEvents Web_V1 As SHDocVwCtl.WebBrowser_V1
在 Form_Load 加入:Set Web_V1 = Web1.Object
这样,Web_V1 就会有如下事件:
▲NewWindow 弹出新窗口以前触发
如果在 Web1_NewWindow2 设置了 ppDisp 为新显示对象,就不会出现此事件
★例子1,用自己开发的程序的新窗口显示弹出网页:
剩余12页未读,继续阅读
- 粉丝: 0
- 资源: 10
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 李兴华Java基础教程:从入门到精通
- U盘与硬盘启动安装教程:从菜鸟到专家
- C++面试宝典:动态内存管理与继承解析
- C++ STL源码深度解析:专家级剖析与关键技术
- C/C++调用DOS命令实战指南
- 神经网络补偿的多传感器航迹融合技术
- GIS中的大地坐标系与椭球体解析
- 海思Hi3515 H.264编解码处理器用户手册
- Oracle基础练习题与解答
- 谷歌地球3D建筑筛选新流程详解
- CFO与CIO携手:数据管理与企业增值的战略
- Eclipse IDE基础教程:从入门到精通
- Shell脚本专家宝典:全面学习与资源指南
- Tomcat安装指南:附带JDK配置步骤
- NA3003A电子水准仪数据格式解析与转换研究
- 自动化专业英语词汇精华:必备术语集锦