调用IE编写网络浏览器,如何避免IE打开新窗口
编号:QA002549
建立日期: 2000年2月11日 最后修改日期:2000年2月11日
所属类别:
David:
编程工具: VB6.0
操作系统: win98/win2000
小弟写了个网络浏览器(调用Ie做内核的),但是后来发现每次点击网页上的新连接后,打开的还是ie的新窗口,而不是小弟自编的浏览器,为此感到十分烦恼,请高手帮忙解决!无限感激!!!
回答:
有两个事件与打开新窗口有关,NewWindow2和BeforeNavigate2事件。如果使用IE快捷菜单上的“在新窗口中打开”或将<a>的target设置为_blank打开新窗口,将触发NewWindow2事件,关于该事件的处理可以参考QA002749 "WebBrowser类和WebBrowser_V1类的区别"。
如果是采用<A HREF=javascrpit:...>的方式打开新窗口,也可以利用WebBrowser控件的BeforeNavigate2事件:
Private Sub brwWebBrowser_BeforeNavigate2(ByVal pDisp As Object, URL As Variant, Flags As Variant, TargetFrameName As Variant, PostData As Variant, Headers As Variant, Cancel As Boolean)
参数URL是链接地址。
当用户点击时会发生这个事件,你可以设置Cancel = False来禁止IE打开新窗口,而自己打开一个窗口,显示URL指定的地址。
相关问题:
QA001698 "如何在WebBrowser控件中获得到其他网页的链接"
此问题由李海回答。
| |
|
|
| |
|
|