在 NewWindow 事件中,假设您的第一个 Wb 控件名为 WB1,而您要重定向到的那个是 WB2,请在 WB1 NW 事件中执行以下操作。
Processed = True ' This cancels the current request.
WB2.Navigate URL ' This redirects it to the second WB2 control.
否则,如果要使用 NW2 (NewWindow2) 事件而不是 NewWindow (NW) 事件,请在 WB1 控件的 NW2 事件中执行此操作。
Set ppDisp = WB2.object ' Just swaps the objects around to redirect, don't need to issue a cancel.
此外,您可以通过 BeforeNavigate2(WB1 的)执行此操作。但代码略有不同。
Cancel = True ' Cancel Request.
WB2.Navigate2 URL ' Reissue it to WB2.
现在,只要您控制它重定向到的位置,如果我没记错的话,您可以使用 WB2.LocationURL 或 Wb2.Document.URL 轻松获取新窗口 URL。
另外,如果你想把渲染引擎改成IE9(即使你的电脑上安装了IE9,WB控件也会使用IE7渲染引擎来兼容)……网上有文章和关于SO的答案(包括我之前的一些答案) ) 其中阐明了如何更改注册表以确保 WB 控件使用的渲染引擎与已安装版本 (IE9) 的渲染引擎相同,否则将始终使用 IE7。而且,如果您在一台机器上安装了 IE4、5 或 6,它将始终使用 IE4 作为渲染引擎。我认为他们会在 3-4 次版本更改后更新渲染版本。我假设在版本 10 期间,WB 控制渲染版本也将是版本 10。
如果您需要更多帮助,请告诉我,我很想知道您的相处方式以及这是否有助于回答您的问题。我所有的例子都在 VB6 中,但是你可以很容易地转换它们。
干杯。