易语言webBrowser浏览器控件,点击里面的链接弹出IE窗口应该怎样解决?

如题所述

第1个回答  2014-10-16
.版本 2

.子程序 _互联网浏览器1_即将打开新窗口
.参数 浏览器对象, 对象, 参考
.参数 取消打开, 逻辑型, 参考

取消打开 = 假
==================
.版本 2

.子程序 _超文本浏览框1_即将打开新窗口, 逻辑型

返回 (假)追问

我说的不是互联网浏览器,是webbrowstr浏览器

追答

.版本 2

.子程序 _WebBrowser1_NewWindow3
.参数 ppDisp, 对象, 参考
.参数 Cancel, 逻辑型, 参考
.参数 dwFlags, 整数型
.参数 bstrUrlContext, 文本型
.参数 bstrUrl, 文本型

WebBrowser1.Navigate (bstrUrl, , , , )
Cancel = 真

这样如果要弹出新窗口的话就会再webbrowser里面打开而非弹出新窗口

追问

我用的是中文版

本回答被提问者和网友采纳
第2个回答  推荐于2016-06-03
  控制打开新的页面在程序中,而不是默认用IE等别的浏览器。部分代码如下:
  在窗口及WebBrowser创建完以后,写此代码:
  WebBrowser.OnNewWindow2:=IE1NewWindow2;
  给主窗口创建一个方法:
  procedure TBrowForm.IE1NewWindow2(Sender: TObject; var ppDisp: IDispatch;var Cancel: WordBool);
  Var NewForm:TBrowForm;
  begin
  try
  NewForm :=TPopBrowerForm.Create(application);
  NewForm.WebBrowser.OnNewWindow2 :=IE1NewWindow2;//如果在窗口的Oncreate事件
  //有此代码,此处就可以省略
  ppDisp := NewForm.WebBrowser.Application;
  NewForm.Show;
  Cancel:=false;
  except
  end;
  end;
通过以上步骤,就可以阻止点击里面的链接弹出IE窗口。
相似回答