Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi URL des Links über dem die Maus ist heraufinden/TWebbrowser (https://www.delphipraxis.net/53105-url-des-links-ueber-dem-die-maus-ist-heraufinden-twebbrowser.html)

alias5000 10. Sep 2005 11:05


URL des Links über dem die Maus ist heraufinden/TWebbrowser
 
Hi Leute!
Ich schreibe grade nen Webbrowser zusammen, und bin auf ein Problem gestoßen:

Mir enthält das Popupmenü vom IE Sachen, die ich net will (z.B. will ich "in neuem Fenster öffnen" in "in neuem Tab öffnen" ändern, oder Quelltext anzeigen, usw.). Ich kann ja ein eigenes Popup einführen(benutze TEmbeddedWB), das Problem ist nur, dass ich dazu herausfinden müsste, über welcher Grafik, über welchem Link die rechte Maistaste gedrückt wurde, damit ich dann entsprechend die URL kriege, um Funktionen wie "In neuem Tab öffnen" realisieren zu können.

Gruß alias5000

marabu 10. Sep 2005 13:16

Re: URL des Links über dem die Maus ist heraufinden/TWebbrow
 
Hallo,

vor kurzem gab es hier einen thread zum Kontextmenü im WebBrowser: klick. Vielleicht hilft dir das weiter?

Grüße vom marabu

PS: Herzlich willkommen in der Delphi-PRAXiS.
PPS: Maistaste - das nenne ich Umweltbewusstsein...

alias5000 10. Sep 2005 15:42

Re: URL des Links über dem die Maus ist heraufinden/TWebbrow
 
Danke erstmal. Ich werde das mal ausprobieren, was er da hat, aber eigentlich wollte ich was anderes. Mir ging es dabei eher darum, herauszufinden, über welchem Link, Grafik etc. die Maus sich befindet, wenn ein rechtsklick kommt. Ich hab schon hier (oder wars doch im Delphi-Forum?) ne ansatzhafte Lösung gefunden: man könnte den Statustext auslesen, da dort immer der Link angegeben wird, wenn einer existiert. Allerdings Lässt sich damit nicht herausfinden, welche Grafik heruntergeladen werden müsste, wenn man eine Grafik speichern wollte und so.
Ich will halt das IE-Popupmenü im großen und ganzen nachbilden, aber an manchen stellen anpassen, damit es besser in mein Programm passt. Leider geht es dabei nicht darum, nur Menuitems hinzuzufügen.

PS.: Bin seit über nem Jahr beim DF und hatte hier immer wieder reingeschaut und dachte mir dann: Mensch, du könnstest doch hier auch mal mitmachen :mrgreen:

Also bis dann!

marabu 10. Sep 2005 18:09

Re: URL des Links über dem die Maus ist heraufinden/TWebbrow
 
Dann brauchst du vielleicht das hier?

Delphi-Quellcode:
function TWebForm.BrowserShowContextMenu(const dwID: Cardinal;
  const ppt: PPoint; const pcmdtReserved: IInterface;
  const pdispReserved: IDispatch): HRESULT;
var
  e: IHTMLElement;
  d2: IHTMLDocument2;
begin
  d2 := Browser.Document as IHTMLDocument2;
  e := d2.elementFromPoint(ppt.x, ppt.y) as IHTMLElement;
  if Assigned(e) then
    ShowMessage(e.outerHTML);
  Result := S_OK; // suppress default context menu
end;
Browser ist vom Typ TEmbeddedWebbrowser.

Freundliche Grüße vom marabu


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