我想对webbrowser的onnewwindow2事件进行控制,让要跳出的网页在原窗口打开,我试了下面三个方法:
1)ppdisp:=webbrowser1.Application ;
2) ppdisp:=(sender as twebbrowser).DefaultInterface ;
3) ppdisp:=webbrowser1.DefaultDispatch;不管用那种发放都能实现目的,只是完成后webbrowser会不见了,完全失踪了,而它实际上还是存在的,因为我还可以操纵它,但是我如何让它显示出来?我用  webbrowser1.Visible也没用, 把边距设到可视范围也没用
  webbrowser1.Width:=800;
  webbrowser1.Left :=0;
  webbrowser1.top :=10;
  webbrowser1.Height:=600;它到底跑去哪了?谁能让它跑出来?

解决方案 »

  1.   

    再new一个 webbrowser2 ,把它放在webbrowser1之后,就是让它看不见,
    在webbrowser1的onnewwindow2中:
      ppdisp:=webbrowser1.Application ;
    在webbrowser2的OnBeforeNavigate2中:
      webbrowser1.Navigate(url);
      Cancel := True;
      

  2.   

    再new一个 webbrowser2 ,把它放在webbrowser1之后,就是让它看不见,
    在webbrowser1的onnewwindow2中:
      ppdisp:=webbrowser2.Application ;  // 先指向webbrowser2
    在webbrowser2的OnBeforeNavigate2中:
      webbrowser1.Navigate(url);         // 再指回webbrowser1
      Cancel := True;