Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi neues browserfenster in tabsheet öffnen (https://www.delphipraxis.net/24511-neues-browserfenster-tabsheet-oeffnen.html)

jAcK oRsEn 22. Jun 2004 12:57


neues browserfenster in tabsheet öffnen
 
hi,


wie kann ich webbrowsernewwindow2 in einem neuen tabsheet öffnen lassen...

so das ein neues tabsheet entsteht und dort der neue browserinhalt geladen wird.


gruß

S2B 22. Jun 2004 13:20

Re: neues browserfenster in tabsheet öffnen
 
Liste der Anhänge anzeigen (Anzahl: 1)
Da hab ich was für dich! Die Unit der ersten Version meines Browsers! :lol: Ich weiß, das es schrecklich programmiert ist, das war auch mein allererstes Delphi-Projekt... :wink:

jAcK oRsEn 22. Jun 2004 13:21

Re: neues browserfenster in tabsheet öffnen
 
bis jetzt hab ich dies, was aber nicht viel hilft!

Delphi-Quellcode:
procedure TForm1.webbrowser1NewWindow2(Sender: TObject;
  var ppDisp: IDispatch; var Cancel: WordBool);
var
   TabSheet : TTabSheet;
   Web: TWebbrowser;
begin

   TabSheet := TTabSheet.Create(Form1.pagecontrol1);
 Web := TWebbrowser.Create(TabSheet);
 with TabSheet do
   begin
     Name:= 'Fenster' ;
     Caption := Name;
     PageControl := form1.pagecontrol1;
   end;
   ppDisp := Web.DefaultDispatch;
  tabsheet.Parent := Form1;

end;
es öffnet ein tabsheet, aber kein browserfenster darin...und wenn ich schließe sagt er index kann nicht gelöscht werden

S2B 22. Jun 2004 13:23

Re: neues browserfenster in tabsheet öffnen
 
Das steht doch alles in der Unit drin!? :gruebel:

jAcK oRsEn 22. Jun 2004 13:27

Re: neues browserfenster in tabsheet öffnen
 
sorry, hab ich nicht gesehen ,schau ich mir mal eben AN

jAcK oRsEn 22. Jun 2004 13:36

Re: neues browserfenster in tabsheet öffnen
 
funktioniert nicht, der öffnet das neue tabsheet aber er öffnet zusätzlich noch de ie und lödt die seite nicht im neuen tabsheet

S2B 22. Jun 2004 13:37

Re: neues browserfenster in tabsheet öffnen
 
Und warum ging es dann bei mir immer? :roll:

toms 22. Jun 2004 13:45

Re: neues browserfenster in tabsheet öffnen
 
@S2B: Dein Code funktioniert bei mir auch nicht:

Eher so:

Delphi-Quellcode:
procedure TForm1.EmbeddedWB1NewWindow2(Sender: TObject;
  var ppDisp: IDispatch; var Cancel: WordBool);
var
  TabSheet: TTabSheet;
  Web: TWebbrowser;
begin
  TabSheet := TTabSheet.Create(Form1.pagecontrol1);
  Web := TWebbrowser.Create(TabSheet);
  with TabSheet do
  begin
    Name := 'Fenster';
    Caption := Name;
    PageControl := Form1.pagecontrol1;
  end;
  ppDisp := Web.DefaultDispatch;
  TWinControl(Web).Parent := TabSheet;
end;

S2B 22. Jun 2004 13:51

Re: neues browserfenster in tabsheet öffnen
 
Als bei mir ging er perfekt! :angle2:

jAcK oRsEn 22. Jun 2004 13:52

Re: neues browserfenster in tabsheet öffnen
 
So jetzt hab ich folgendes um so viele Tabsheets wie möglich erzeugen zu können, aber
es funktioniert nicht...


Delphi-Quellcode:
procedure TForm1.webbrowser1NewWindow2(Sender: TObject;
  var ppDisp: IDispatch; var Cancel: WordBool);
var
  TabSheet: TTabSheet;
  Web: TWebbrowser;
begin
  TabSheet := TTabSheet.Create(Form1.pagecontrol1);
  Web := TWebbrowser.Create(TabSheet);
  with TabSheet do
  begin


    PageControl := Form1.pagecontrol1;
  end;
  ppDisp := Web.DefaultDispatch;
  TWinControl(Web).Parent := TabSheet;
  TWinControl(Web).align := alclient;
end;

jAcK oRsEn 22. Jun 2004 14:05

Re: neues browserfenster in tabsheet öffnen
 
es kommt nur ein abbild des ersten browserfensters

toms 22. Jun 2004 14:08

Re: neues browserfenster in tabsheet öffnen
 
funktioniert's so?

Delphi-Quellcode:
procedure TForm1.webbrowser1NewWindow2(Sender: TObject;
  var ppDisp: IDispatch; var Cancel: WordBool);
var
  TabSheet: TTabSheet;
  Web: TWebbrowser;
begin
  TabSheet := TTabSheet.Create(Form1.pagecontrol1);

  with TabSheet do
  begin
    PageControl := Form1.pagecontrol1;
  end;
  Web := TWebbrowser.CreateParented(TabSheet.Handle);
  TabSheet.InsertControl(Web);
  TWinControl(Web).align := alClient;
  ppDisp := Web.DefaultDispatch;

  PageControl1.ActivePageIndex := PageControl1.PageCount-1;
  Web.OnNewWindow2 := Webbrowser1NewWindow2;
end;

jAcK oRsEn 22. Jun 2004 14:08

Re: neues browserfenster in tabsheet öffnen
 
komisch, wenn ich das hier:

Delphi-Quellcode:
TWinControl(Web).align := alclient;
weglasse gehts, aber dann ist das browserfenster im zweiten tabsheet nicht maximiert!

jAcK oRsEn 22. Jun 2004 14:10

Re: neues browserfenster in tabsheet öffnen
 
moment, ich teste neuen code



Fehler: ActivePageIndex nicht gefunden

jAcK oRsEn 22. Jun 2004 14:12

Re: neues browserfenster in tabsheet öffnen
 
ok, habs nun, aber jetzt wird die neue seite immer einen tabsheet vor der alten geladen...

es soll aber anders herum gehen!


jetzt wird also die neue seite in tabsheet0 geladen und die alte geht in tabsheet1

jAcK oRsEn 22. Jun 2004 14:38

Re: neues browserfenster in tabsheet öffnen
 
ok, habs jetzt...aber wie genau kann ich es jetzt schaffen das er mir oben im tabsheet die url anzeigt....

Delphi-Quellcode:
procedure TForm1.webbrowser1NewWindow2(Sender: TObject;
  var ppDisp: IDispatch; var Cancel: WordBool);
var
  TabSheet: TTabSheet;
  Web: TWebbrowser;
begin
  TabSheet := TTabSheet.Create(Form1.pagecontrol1);

  with TabSheet do
  begin
    PageControl := Form1.pagecontrol1;
  end;
  Web := TWebbrowser.CreateParented(TabSheet.Handle);
  TabSheet.InsertControl(Web);
  TWinControl(Web).align := alClient;
  ppDisp := Web.DefaultDispatch;
//  PageControl1.activepage.pageindex := PageControl1.PageCount- 1;
  Web.OnNewWindow2 := Webbrowser1NewWindow2;
  Web.OnCommandStateChange := Webbrowser1CommandStateChange;
  web.OnDocumentComplete := Webbrowser1documentcomplete;
  Web.OnNavigateComplete2 := Webbrowser1NavigateComplete2;
  Web.OnProgressChange := Webbrowser1ProgressChange;
  Web.OnstatusTextChange := Webbrowser1StatusTextChange;
  Pagecontrol1.Pages[pagecontrol1.PageCount - 1].caption := 'Lade...';
 
end;
und wie mache ich das mit der Enter Taste, das es für alle Webbrowser wirkt...und z.B. auch mit der Tab taste!

S2B 22. Jun 2004 14:46

Re: neues browserfenster in tabsheet öffnen
 
Würde mich auch interessieren, aber neue Frage, neuer Thread! :wink:

MathiasSimmack 22. Jun 2004 14:57

Re: neues browserfenster in tabsheet öffnen
 
Ein neuer Beitrag, wo es doch offensichtlich immer noch mit dem WebBrowser und dem TabSheet zu tun hat?

Zitat:

Zitat von jAcK oRsEn
ok, habs jetzt...aber wie genau kann ich es jetzt schaffen das er mir oben im tabsheet die url anzeigt....

Ich habe ein altes Projekt von mir gefunden (zumindest die PAS-Datei ist noch da), in dem ich beim WebBrowser auf das Ereignis "OnBeforeNav" reagiere. Und dort wird der URL dann angezeigt:
Delphi-Quellcode:
procedure TXplorForm.BeforeNav(Sender: TObject; const pDisp: IDispatch; var URL: OleVariant;
  var Flags: OleVariant; var TargetFrameName: OleVariant;
  var PostData: OleVariant; var Headers: OleVariant; var Cancel: WordBool);
begin
  PageControl1.ActivePage.Caption := URL;
end;
Ach so: Dieses Delphi-Projekt hatte die gleiche Aufgabe wie deine Frage - neue Seiten in einem eigenen TabSheet öffnen.

Zitat:

und wie mache ich das mit der Enter Taste, das es für alle Webbrowser wirkt...und z.B. auch mit der Tab taste!
:wiejetzt: Was willst du mit Enter und Tab machen?

jAcK oRsEn 22. Jun 2004 15:03

Re: neues browserfenster in tabsheet öffnen
 
ja das alte Problem mit Textarea Tab taste und Enter taste!


Welche durch die MSGHandler funktion angefangenund verarbeitet wird.

MathiasSimmack 22. Jun 2004 15:13

Re: neues browserfenster in tabsheet öffnen
 
Zitat:

Zitat von jAcK oRsEn
ja das alte Problem mit Textarea Tab taste und Enter taste!

Ich stehe gerade auf dem Schlauch ... :oops: ... welches Problem gibt es da?

jAcK oRsEn 22. Jun 2004 15:23

Re: neues browserfenster in tabsheet öffnen
 
die enter taste funktioniert z.B. ohne diese Funktion im Webbrowser nicht...

S2B 24. Jun 2004 19:07

Re: neues browserfenster in tabsheet öffnen
 
Ich würde das auch gerne wissen! Ich erläutere das mal kurz:
Diese Funktion soll so abgeändert werden, dass sie auch in mehreren WebBrowsern funktioniert. jAcK oRsEn hat ja mit jedem Popup-Fenster einen neuen WebBrowser, in dem die Entertaste nicht aktiviert ist...


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:34 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz