otwieranie nowych okine w webbrowserze

0

Napisałem przeglądarkę WWW, z obsługą kart(pagecontrol). Wygląda to mniej więcej tak, że przy włączeniu programu pokazuje się już jedna karta ze stroną domową, a następne są otwierane podczas uruchomienia programu. Chciałem też napisać coś takiego, że po kliknięciu "Otwórz w nowym oknie" strona zostanie otworzona w nowej karcie. Udało mi się, ale działa to tylko kiedy otwieram nowe okna z tej pierwszej karty która automatycznie włącza się wraz z uruchomieniem programu. Przy tych zakładkach które zostają tworzone w trakcie trwania programu nie wiem jak to utworzyć.

Oto kod, który zastosowałem do domyślnej karty.

procedure TForm1.WebBrowser1NewWindow2(ASender: TObject;
  var ppDisp: IDispatch; var Cancel: WordBool);
var
  newTabSheet: TTabSheet;
  newWebBrowser: TWebBrowser;
begin
  newTabSheet := TTabSheet.Create(PageControl1);
  newTabSheet.Caption := 'Pusta';
  newTabSheet.Name := 'tsNewPage_' + FormatDateTime('yyyymmddhhnnsszzz', now); // just a unique name
  newTabSheet.PageControl := PageControl1;
  newTabSheet.Parent := PageControl1;
  PageControl1.ActivePage := newTabSheet;
  newWebBrowser := TWebBrowser.Create(newTabSheet);
  TWinControl(newWebBrowser).Name := 'WB_' + FormatDateTime('yyyymmddhhnnsszzz', now); // just a unique name
  TWinControl(newWebBrowser).Parent := newTabSheet;
  newWebBrowser.Align := alClient;
  ppDisp := newWebBrowser.DefaultDispatch;
end;

Prosze o pomoc

0

Czy chodzi o to, ze nie pojawia Ci sie na nowych zakladkach opcja "Otworz w nowym oknie"?
Musisz dodac do nowo utworzonej zakladki wskaznik na TPopMenu czy co tam uzywasz do wysweitlenia tej opcji.

0

dobra można usunąć znalazłem już na to odpowiedź

1 użytkowników online, w tym zalogowanych: 0, gości: 1