Twebbrowser的问题(30分)

  • 主题发起人 主题发起人 microbit
  • 开始时间 开始时间
M

microbit

Unregistered / Unconfirmed
GUEST, unregistred user!
我用twebbrowser 控件编浏览器时,在浏览网中在新窗口中打开一个网页
时,它却用 ie来打开,不用我的程序来打开???????
 
当然,webbrowwer本来就是ie嘛
 
我知道,在newwindow事件中设置,但怎么写呢。
有段vb代码:
//-----------------------------------

用 WebBrowser 控件创建一个内置的浏览器的时候,如果在这个内置的浏览器中点击打开新窗口显示的连接,一个 IE 的窗口将会显示。我们当然并不希望是这样的,这就需要处理这个控件中的 NewWindow2 事件,下面的代码示例了如何在打开新窗口的时候打开的是我们自己的浏览器。

我们在窗口中放置一个名为“WbInside” 的 WebBrowser 控件:

把下面的代码加入到一个窗体中
Private Sub wbInside_NewWindow2(ppDisp As Object, Cancel As Boolean)
Dim WebFrm As Browser
Set WebFrm = New Browser
Set ppDisp = WebFrm.wbInside.object
WebFrm.Visible = True
Set WebFrm = Nothing
End Sub
//--------------------------
麻烦高手把它该为bcb 代码.
 
没有人吗?55
 
procedure TForm1.w1NewWindow2(Sender: TObject; var ppDisp: IDispatch;
var Cancel: WordBool);
begin
ppDisp:=W2.ControlInterface ;
end;
w1,w2是两个twebbrowser控件。
BCB中的表述方法:
void __fastcall TFormMain::w1NewWindow2(TObject *Sender,
LPDISPATCH *ppDisp, TOLEBOOL *Cancel)
{
*ppDisp =w2->ControlInterface ;
}
在程序中动态建立Webbrowser:
Delphi:
var w2:TWebBrowser;
W2:=TWebBrowser.create(Form1);
form1.InsertControl(w2);必须这么做,而且要设置其left,top,height,width以决定其位
置,否则的话将在form1的左上角出现一个小窗口;
ppDisp:=W2.ControlInterface ;

bcb:
TCppWebBrowser *w2 =new TCppWebBrowser(Form1);
Form1->InsertControl(w2);必须这么做,而且要设置其left,top,height,width以决定其位
置,否则的话将在form1的左上角出现一个小窗口;
*ppdisp=w2->ControlInterface;
 
hhzh426:
thank u.
但不管如何也逃不了IE的窠臼,可恶的微软:)
 
后退
顶部