Anfangs hat es nur einen TWebbrowser. Wenn OnNewWindow2 ausgelöst wird,
erzeuge ich auch dynamisch ein neues TTabSheet mit einem Webbrowser drauf:
Delphi-Quellcode:
procedure TfrmMyBrowser.WebBrowser1NewWindow2(Sender: TObject;
var ppDisp: IDispatch; var Cancel: WordBool);
var
NewWindow: TfrmMyBrowser;
ts: TTabSheet;
begin
// if the Webbrowser Dokument is not completely loaded, it might be a popup
if (Sender as TWebbrowser).ReadyState <> READYSTATE_COMPLETE then
begin
ppDisp := nil;
Cancel := True;
end else
begin
ts := CreateTabBrowser('', 'New Browser'); // <---- WB wird hier dynamisch erzeugt
WaitForBrowser(TWebbrowser(ts.Controls[0]));
ppdisp := (TWebbrowser(ts.Controls[0])).Application;
WaitForBrowser(TWebbrowser(ts.Controls[0]));
end;
end;