Help and Support

文章编号: 185538 - 最后修改: 2004年6月29日 - 修订: 2.1

如何导致同一 WebBrowser 窗口中出现的导航

展开全部 | 关闭全部

概要

如果承载 Internet Explorer 4 x 的更高版本的 WebBrowser 控件在 Visual Basic 应用程序,可以具有总是发生在应用程序和不是其他 Internet Explorer 窗口的导航。 如果您处理 NewWindow2 事件和取消标记等于 True 的组,则将在完全取消导航。 因为 NewWindow2 不提供与 Internet Explorer 3 x NewWindow 事件导航到 URL 您,存在不是任何方法具有在相同窗口中发生的导航。

幸运的是,Internet Explorer 4 x 或更高版本将 WebBrowser_V1 对象为与 Internet Explorer 3 x 使用 WebBrowser_V1 对象的兼容性,那么可以有应用程序从版本 3.x、 4 x 和 5 x 接收事件。。 这意味着处理版本 3 x NewWindow 事件并且则具有在当前窗口中发生的导航。

更多信息

若要在 Visual Basic 应用程序中实现此功能,请按照下列这些步骤操作:
  1. 使用 WebBrowser 控件在创建窗体。
  2. 该窗体的声明部分中, 添加以下:
          Dim WithEvents Web_V1 as SHDocVwCtl.WebBrowser_V1
    						
    这将声明 WebBrowser_V1 变量可以接收 WebBrowser_V1 提供了 NewWindow 事件的事件。
  3. 在 Form _ Load 事件中添加以下:
          Set Web_V1 = WebBrowser1.Object
    	  WebBrowser1.Navigate2 "http://www.microsoft.com/"
    						
    这将 WebBrowser_V1 对象设置到现有的 Internet Explorer WebBrowser 对象。
  4. NewWindow2 事件触发后,Web_V1_NewWindow 将触发该事件通过链接的 URL 作为其输入参数之一。 请记住不将取消设置为 True NewWindow2 中。 将还,处理的变量设置为 True NewWindow 事件处理程序中,以便不会创建一个新的 Internet Explorer 实例。 以下代码显示了此事件处理程序和代码不必在当前窗口中浏览:
          Private Sub Web_V1_NewWindow(ByVal URL As String, _
                                       ByVal Flags As Long, _
                                       ByVal TargetFrameName As String, _
                                       PostData As Variant, _
                                       ByVal Headers As String, _
                                       Processed As Boolean)
             Processed = True
             WebBrowser1.Navigate URL
          End Sub
    					
  5. 右键单击一个链接,选择"打开在新窗口"中,并且您会发现该链接将仍打开您的 WebBrowser 控件内。

    请注意 Internet Explorer 会不触发 NewWindow 或 NewWindow2 事件,当用户按下 CTRL+N 或位于文件菜单下新建指向并单击窗口。

参考

有关其他信息,请参见该的以下文章的 Microsoft 知识库文章:
184876? (http://support.microsoft.com/kb/184876/EN-US/ ) 如何使用 WebBrowser 控件 NewWindow2 事件
详细信息,请参阅在 MSDN Online Web Workshop:
http://msdn.microsoft.com/workshop/ (http://msdn.microsoft.com/workshop/)
(c) Microsoft Corporation 1998 保留所有权利。 由 Scott Roberts,Microsoft Corporation

这篇文章中的信息适用于:
  • Microsoft Internet Explorer 4.0 128-Bit Edition
  • Microsoft Internet Explorer 4.01 Service Pack 2
  • Microsoft Internet Explorer 5.0
  • Microsoft Internet Explorer 5.5
关键字:?
kbmt kbhowto kbwebbrowser KB185538 KbMtzh
机器翻译机器翻译
注意:这篇文章是由无人工介入的微软自动的机器翻译软件翻译完成。微软很高兴能同时提供给您由人工翻译的和由机器翻译的文章, 以使您能使用您的语言访问所有的知识库文章。然而由机器翻译的文章并不总是完美的。它可能存在词汇,语法或文法的问题,就像是一个外国人在说中文时总是可能犯这样的错误。虽然我们经常升级机器翻译软件以提高翻译质量,但是我们不保证机器翻译的正确度,也不对由于内容的误译或者客户对它的错误使用所引起的任何直接的, 或间接的可能的问题负责。如果您发现了错误并希望帮助我们提高机器翻译技术,请完成文章末尾的在线调查。
点击这里察看该文章的英文版: 185538? (http://support.microsoft.com/kb/185538/en-us/ )
Microsoft和/或其各供应商对于为任何目的而在本服务器上发布的文件及有关图形所含信息的适用性,不作任何声明。 所有该等文件及有关图形均"依样"提供,而不带任何性质的保证。Microsoft和/或其各供应商特此声明,对所有与该等信息有关的保证和条件不负任何责任,该等保证和条件包括关于适销性、符合特定用途、所有权和非侵权的所有默示保证和条件。在任何情况下,在由于使用或运行本服务器上的信息所引起的或与该等使用或运行有关的诉讼中,Microsoft和/或其各供应商就因丧失使用、数据或利润所导致的任何特别的、间接的、衍生性的损害或任何因使用而丧失所导致的之损害、数据或利润不负任何责任。
Retired KB Article不再更新的 KB 内容免责声明
本文介绍那些 Microsoft 不再提供支持的产品。因此本文按“原样”提供,并且不再更新。

文章翻译

 

Related Support Centers