![]() |
TWebBrowser problem mit neuen fenstern
Hallo,
ich hab mir mit der TWebBrowser Komponente einen Browser gebastelt, jetzt hab ich folgendes problem. Wenn man in dem Browser Fenster auf einen link klickt, der sich in einem neuen fenster öffnet, dann wird dies mit dem Microsoft IE gemacht, ich will erreichen, das mein browser dies verhindert und bei einer note-control einen neuen note auf macht und die seite darin anzeigt. Danke - Ghost |
Re: TWebBrowser problem mit neuen fenstern
Die Suche ist dein Freund:
![]() |
Re: TWebBrowser problem mit neuen fenstern
das hilft mir leider nicht weiter ...
es würde mit schon reichen, wenn ich verhindern könnte das der IE aufgeht und wenn ich die popup addresse abfangen könnte. |
Re: TWebBrowser problem mit neuen fenstern
Du kannst entweder deinen Browser als Standardprogramm für .html ... etc. festlegen, oder man kann den angeklickten Link auslesen und dann Manuell weiterverarbeiten... Verwende bitte die die
![]() |
Re: TWebBrowser problem mit neuen fenstern
Bei der Suche müsste echt alles mögliche mit Code dabei sein.
Da ich aber auch kein Rätsel-Onkel sein will hier eine Möglichkeit :-)
Delphi-Quellcode:
procedure TUBrowseWin.WebBrowser1NewWindow2(ASender: TObject;
var ppDisp: IDispatch; var Cancel: WordBool); begin Cancel := true; end; |
Re: TWebBrowser problem mit neuen fenstern
danke :) werden mich mal mit den sachen auseinandersetzen
Ghost |
Re: TWebBrowser problem mit neuen fenstern
hm ... danke für das cancel :)
eine letzte frage, wie kann ich die addresse auslesen, auf die er popupen will, also, ich unterdrücke das popup durch das Cancel=true. Wie bekomm ich raus, was er öffnen wollte mir dem popup? |
Re: TWebBrowser problem mit neuen fenstern
der Code von scp bewirkt allerdings nur, dass der Browser nicht selbst den Link "ausführt" und du das übernehmen kannst!
edit: Wo ist bloß der rote Kasten :gruebel: |
Re: TWebBrowser problem mit neuen fenstern
das ist mir klar, aba wenn ich das jetzt übernehmen will, muss ich ja wissen, welche url ich öffnen muss.
d.h. welche er mit dem popup geöffnet hätte, hätte ich es nicht unterdrückt. Und wie komme ich an die URL? |
Re: TWebBrowser problem mit neuen fenstern
Das wurde z.B.
![]() |
Re: TWebBrowser problem mit neuen fenstern
ok, ich komme jetzt an die url ran :)
Ich weiß auch wie ich eine neies tab erstelle bei dem tabbednotebook, aber wie bekomme ich jetzt auf den neuen Tab ein TWebBrowser feld? |
Re: TWebBrowser problem mit neuen fenstern
Zitat:
Gruß mr47 |
Re: TWebBrowser problem mit neuen fenstern
und wie erzeuge ich ein TWebBrwoser feld in dem neuen tab?
:gruebel: |
Re: TWebBrowser problem mit neuen fenstern
Etwa so:
Delphi-Quellcode:
var
ts: TTabsheet; wb: TWebBrowser; begin ts := TTabsheet.Create(PageControl1); ts.Caption := 'Neu'; ts.PageControl := PageControl1; PageControl1.ActivePage := ts; wb := TWebBrowser.Create(ts); ts.InsertControl(wb); wb.Align := alClient; wb.OnNewWindow2 := WebBrowser1NewWindow2; //..... end; |
Re: TWebBrowser problem mit neuen fenstern
Hi!
Und dann nicht vergessen, die createten (was ein Wort) Sachen auch wieder freizugegeben. Das sollte man sich angewöhnen, dann vergisst man das nicht, wenns mal wirklich drauf ankommt. Ciao Frederic |
Re: TWebBrowser problem mit neuen fenstern
Hi Frederic,
man kann die Verantwortung auch an einen Owner delegieren - wie im Code von Beitrag #14 geschehen. Frohe Ostern marabu |
Re: TWebBrowser problem mit neuen fenstern
Hi!
Das ist mir klar. Aber wäre es nicht sinnvoller, die Sachen trotzdem noch einzeln freizugeben? Erstens mal aus Gründen der Übersichtlichkeit und außerdem vergisst man es dann auch nicht, wenn man mal in anderen Situationen ist, oder? Außerdem wäre so die "Lebenszeit" doch unnötig verlängert, oder? Es bliebe ja alles so lang erhalten, wie auch das PageControl1 lebt. Wenn man dann mal ein paar Tabs geöffnet hatte im Laufe einer Instanz, dann iss doch schon einiges an Speicher belegt, oder etwa nicht? Wie dem auch sei, war mehr so ein Tipp der Vollständigkeit halber. Ciao Frederic |
Re: TWebBrowser problem mit neuen fenstern
Deine Überlegungen sind richtig, aber es ist schon so in Ordnung wie es ist. Der Owner für den WebBrowser ist ja das Tabsheet.
marabu |
Re: TWebBrowser problem mit neuen fenstern
Mal ne ganz blöde frage, wie kann ich im objectinspector dem page control von anfang an einen page geben?
|
Re: TWebBrowser problem mit neuen fenstern
Hi!
Geht das nicht durch Setzen der ActivePage Property? Ciao Frederic |
Re: TWebBrowser problem mit neuen fenstern
Über ActivePag kann ich nur festlegen, welche der vorhandenen pages "aufgeschlagen" ist.
Aber wie erstelle ich eine page ? |
Re: TWebBrowser problem mit neuen fenstern
Hi!
Rechtsklick auf das PageControl und dann NewPage. Ciao Frederic |
Re: TWebBrowser problem mit neuen fenstern
... das war ja einfach ...
Danke :thumb: |
Re: TWebBrowser problem mit neuen fenstern
so, hab da noch eine frage, passt zwar nicht gerade hier ins topic.
Frage: Wie kann ich onCreate machen, das das Fenster maximiert ist? bzw. wie mach ich das immer alle dinge auf der forum sichtbar sind, auch wenn der user das forum durch den mauszeiger verkleinert oder vergrößert? |
Re: TWebBrowser problem mit neuen fenstern
Hi!
Wie du ja schon festgestellt hast, passt es hier nicht rein, dann mach doch bitte einen neuen Thread auf, dann antworte ich dir auch gerne :wink: Ciao Frederic |
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:01 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz