使用网络浏览器控件[转]

来源:互联网 发布:为什么网络不安全 编辑:程序博客网 时间:2024/06/18 18:31

网络浏览器控件增加了应用程序的网络浏览和文件阅读以及数据下载等能力。它可以使使用者在访问Internet网上的站点时与在本机文件夹和网络上同样方便。网络浏览器控件同样支持超文本链结方式和URL(通用资源定位器)导向方式。同样,网络浏览器控件支持网络浏览的记忆功能,可以允许浏览者浏览以前访问过的网址﹑文件夹和文件。

网络浏览器控件支持剖析和显示用HTML(超文本宏语言)编码的文档。它还是可以容纳任何ActiveX 文档的资源管理器。这就是说即使是象Excel文件或Word文件这样的格式化文档也能够用网络浏览器控件来打开和编辑。它还是可以容纳任何ActiveX 控制的容器。

使用方法

网络浏览器控件的一些用法如下:

  1. 使用户可以访问和查看各种HTML文档,不管是在本机系统,网络或是WWW站点上。
  2. 提供给用户一个独立的结构,它可以用来查看和编辑各种类型的ActiveX 文档。
  3. 建立一个应用程序,它基于网络浏览器控件而有助于用户进行网络浏览。
  4. 用导航方式访问新的地址。

网络浏览器控件可以访问本机系统、网上邻居和WWW站点的任何地址。你可以用导航方式来控制浏览器的访问地址,它的第一个参数是包含访问地址名称的字符串。访问本机或网上邻居的地址时,你必须指出该地址在本机上的全路径或者在网络上的UNC名字;而访问WWW站点时,你应该指明它的URL。如果在你的应用程序中包含文本框,你就可以让用户指定要访问的地址并且告知导航方式。

导航方式允许你将目标指向HTML文档的特殊结构,从而使网络浏览器控件显示该结构的某个网址或者它在本机的位置。首先,你要调用导航方式并且指出包含该结构的HTML页的URL。然后,在随后的调用过程中通过指明该结构的名称,你就可以让网络浏览器控件显示包含于该结构中的地址。

你可以用LocationNameLocationURL属性来检索网络浏览器控件当前访问地址的有关信息。如果访问对象是WWW站点上的HTML文档,那么LocationName就检索该文件的名称,而LoationURL就检索该文件的URL。如果访问对象是网络或者本机上的文件、文件夹,则LocationNameLoationURL就同时检索其UNC名或者全路径。

一个HTML文件编写者可以建立这样一个超级链接,无论它是否被选中,它都可以导致Internet服务器执行他的程序。超级链接一般在HTTP环境下将数据传输给应用程序,而同时应用程序处理这些数据。导航方式支持访问上述链接,同时它还包括那些允许你指定一些数据来传递给程序的参数。你可以指定一个HTTP域名、数据或相关文档的URLHTTP域名指定了以下内容:服务器所必需的操作、传递给服务器的数据类型或者代码优先级等等。HTTP数据是程序所要处理的实际数据。相关文档是包含超级链接的HTML文档。

RefreshRefresh2方式来更新缓存
浏览器控件会将最近访问站点的网页内容存入用户硬盘的高速缓存,这样,当浏览器控件重访该站点时,它以缓存重载的形式来代替从Internet服务器再次下载,从而节省了时间。你可以通过使用Refresh或者Refresh2方式来控制浏览器控件重新下载网页。这就确保了用户所见到的是最新的网页。而且,调用导航方式时,你可以设置navNoReadFromCache标志 和navNoWriteToCache标志,这样就能够阻止浏览器控件调用高速缓存.

通过GobackGoForward方式来导向历史记录
在浏览过程中,网络浏览器控件保留一个所访问过所有站点的记录(除非调用导航方式时已设定了navNoHistory标志)。你可以用GobackGoforward方式控制浏览器控件向前或向后访问记录中的站点。你可以用GoHome方式使浏览器控件返回你的主页或者始页,而GoSerch方式将使你回到你正在检索的网页。

Busy属性和Stop方式来控制浏览操作
你可以用Busy属性来决定浏览器控件是导向一个新的地址还是下载一个文件。假如浏览器控件正在工作,你可以在工作完成前用Stop方式来停止导向或下载。

Visible属性来决定浏览器控件的显示和隐藏
浏览器控件刚建立时默认为隐藏属性,但它在使用NavigateGoSearch方式时就成为可见状态。你也可以通过设定Visible属性为TrueFalse来决定它的显隐。

浏览器调用事件

浏览器控件调用许多不同事件来将信息传给用户的应用程序和浏览过程。浏览器控件将导向一个新的地址时,它调用BeforeNavigate事件来指明新地址的URL或路径,和任何将通过HTTP环境下传递给Internet服务器的数据。那些数据可以包括HTTP域名、HTTP数据和与之相关的URLBeforeNavigate事件同时包含一个取消的标志,你可以将它设定为False来取消导向过程。当浏览器控件完成对新地址的导向后,它就调用NavigateComplete事件。这个事件包括除了取消标志以外BeforeNavigate事件的全部信息。

每当浏览器控件开始下载操作时,它就调用DownloadBegin事件。而下载过程中它多次调用ProgressChange事件,下载完成后它则调用DownloadComplete事件。应用程序通常用这三个事件来指明下载操作的进度,而且会用一个进程条来显示进度。应用程序用显示、更新和关闭进程条分别作出对DownloadBeginProgressChangeDownloadComplete三种事件的响应。当应用程序用navOpenInNewWindow标志来调用导航方式时,浏览器控件会在导向新地址前调用NewWindow事件。这事件包含了新地址的信息和决定应用程序还是浏览器控件来创建新窗口的标志。把该标志设为True则由应用程序来创建窗口,设为False则由浏览器控件来创建。