Einzelnen Beitrag anzeigen

Fox80

Registriert seit: 18. Apr 2007
Ort: Rostock
3 Beiträge
 
#1

Problem mit zur Laufzeit erstelltem Button

  Alt 3. Mai 2007, 23:51
Hi,

ich möchte in meinem zur Laufzeit erstellten Tabsheet mittels Button das Tabsheet wieder schließen.

folgenden Code habe ich:

Delphi-Quellcode:
procedure THauptseite.closeButtonClick(Sender: TObject);
begin
  if navpagecontrol.ActivePageIndex > 0 then NavPageControl.ActivePage.Free;
end;

// target_new
procedure THauptseite.WebBrowserNewWindow2(Sender: TObject;
  var ppDisp: IDispatch; var Cancel: WordBool);
var
  TabSheet: TTabSheet;
  Web: TWebbrowser;
  newNav: TPanel;
  closeTabButton: TButton;
begin
  TabSheet := TTabSheet.Create(NavPageControl);
  TabSheet.PageControl := NavPageControl;
  newNav := TPanel.Create(TabSheet);
  newNav.parent := TabSheet;
  with newNav do begin
    height := 30;
    align := altop;
  end;
  closeTabButton := TButton.Create(newNav);
  closeTabButton.Parent := newNav;
  with closeTabButton do begin
    caption := 'closeTab';
    width := 60;
    height := 20;
    top := 5;
  end;
  CloseTabButton.OnClick := closeButtonClick;
  Web := TWebBrowser.Create(TabSheet);
  Web := TWebbrowser.CreateParented(TabSheet.Handle);
  TabSheet.InsertControl(Web);
  Web.Align := alClient;
  Web.OnNewWindow2 := WebbrowserNewWindow2;
  NavPageControl.ActivePageIndex := NavPageControl.PageCount-1;
  ppDisp := Web.DefaultDispatch;

end;
Ist es möglich den bereits vorhandenen Button zu "kopieren" anstatt einen neuen zur Laufzeit zu erstellen?
Ich würde auch gerne die "vor/zurück/aktualsieren" Buttons des "echten" Webbrowsers nutzen/kopieren, so daß sie auch nur im aktiven tabsheet arbeiten.

Zweite Frage: wie bekomme ich nun noch den neuen Locationname in die Tabsheet.caption des neu erzeugten Fensters?
  Mit Zitat antworten Zitat