Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi Webbrowser: Nach Klick auf Link nicht neues Fenster öffnen (https://www.delphipraxis.net/104308-webbrowser-nach-klick-auf-link-nicht-neues-fenster-oeffnen.html)

Chrissi91 1. Dez 2007 09:38


Webbrowser: Nach Klick auf Link nicht neues Fenster öffnen
 
Hio,

ich habe einen WebBrowser auf der Form und möchte, dass wenn man auf einen Link klickt, egal ob Shift oder Strg dabei gedrückt ist, dass der Link im selben WebBrowser aufgerufen wird. Allerdings soll dadurch der Referrer nicht verloren gehen.

ICh habe nichts gefunden, wie ich verhindern kann, dass der IE sich öffnet und das Fenster bei sich anzeigt.

Chrissi91 2. Dez 2007 16:54

Re: Webbrowser: Nach Klick auf Link nicht neues Fenster öffn
 
*push*

Keiner eine Idee oder ist mein Problem unklar? :stupid:

Larsi 2. Dez 2007 17:57

Re: Webbrowser: Nach Klick auf Link nicht neues Fenster öffn
 
kannste net die Strg Taste beim klciken komplett deaktivieren

Chrissi91 2. Dez 2007 18:04

Re: Webbrowser: Nach Klick auf Link nicht neues Fenster öffn
 
Hä?

Versteh ich nicht ganz, Meinst du vll aktivieren? ^^

Egal ob ich Shift, Strg oder gar nichts drücke. Es öffnet sich immer im neuen Fenster, liegt aber auch daran, dass im Code steht: target="_blank". Es darf sich aber nichts im neuen Fenster öffnen !!! Es muss im selben WebBrowser bleiben und darf schon gar nichts das Programm wechseln !!!

Larsi 2. Dez 2007 18:29

Re: Webbrowser: Nach Klick auf Link nicht neues Fenster öffn
 
ich kenn mich damit jez net so aus aber kann man das net so machen dass du nhotkey der sagt wenn strg dann verhinder start von ie

S2B 2. Dez 2007 18:44

Re: Webbrowser: Nach Klick auf Link nicht neues Fenster öffn
 
...eine URL die im neuen Fenster geöffnet wurde mit TWebBrowser öffnen?
:wink:

marabu 2. Dez 2007 18:49

Re: Webbrowser: Nach Klick auf Link nicht neues Fenster öffn
 
Hallo Christopher,

ich fürchte das wird nicht mit einer Zeile Code zu erledigen sein. Prinzipiell würde ich ein neues Browser Control instanzieren und in NewWindow2 (ppDisp := DefaultDispatch) übergeben. Wenn du dann noch gleichzeitig das neue Control an die Stelle des alten setzt, die notwendigen Events und Properties rettest und dann das alte Control vernichtest, dann entsteht beim Benutzer der Eindruck, als ob er im selben Fenster surft.

Microsoft nennt als alternativen Ansatz die Verwendung der IE3-kompatiblen Schnittstellen, aber das habe ich mir aus verschiedenen Gründen nie angesehen.

Grüße vom marabu

Chrissi91 2. Dez 2007 19:32

Re: Webbrowser: Nach Klick auf Link nicht neues Fenster öffn
 
Zitat:

Zitat von marabu
Hallo Christopher,

ich fürchte das wird nicht mit einer Zeile Code zu erledigen sein. Prinzipiell würde ich ein neues Browser Control instanzieren und in NewWindow2 (ppDisp := DefaultDispatch) übergeben. Wenn du dann noch gleichzeitig das neue Control an die Stelle des alten setzt, die notwendigen Events und Properties rettest und dann das alte Control vernichtest, dann entsteht beim Benutzer der Eindruck, als ob er im selben Fenster surft.

Microsoft nennt als alternativen Ansatz die Verwendung der IE3-kompatiblen Schnittstellen, aber das habe ich mir aus verschiedenen Gründen nie angesehen.

Grüße vom marabu

Kann ich nicht einfach die URL abfragen, auf die geklickt wurde und dann mit Browser.Navigate() die Seite in mein Fenster holen und das neu geöffnete wieder schließen? Oder gehen dabei Daten wie Refferer verloren?

marabu 2. Dez 2007 19:53

Re: Webbrowser: Nach Klick auf Link nicht neues Fenster öffn
 
Das Problem ist, dass der neue URL erst beim Ereignis BeforeNavigate2 bereit steht - und dieses Ereignis wird nach NewWindow2 gefeuert.


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:42 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