AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi TWebbrowser und auf Klick auf einen Link reagieren
Thema durchsuchen
Ansicht
Themen-Optionen

TWebbrowser und auf Klick auf einen Link reagieren

Ein Thema von Angel4585 · begonnen am 22. Mär 2006 · letzter Beitrag vom 23. Mär 2006
Antwort Antwort
Angel4585

Registriert seit: 4. Okt 2005
Ort: i.d.N.v. Freiburg im Breisgau
2.199 Beiträge
 
Delphi 2010 Professional
 
#1

TWebbrowser und auf Klick auf einen Link reagieren

  Alt 22. Mär 2006, 11:51
Hallo zusammen,

wenn ich eine Seite im TWebbrowser lade und darauf ein Linke mit "Rel", "Rev", oder "alt" ist, wie kann ich darauf zugreifen?

Ich habs im OnBeforeNavigate probiert, aber in den OleVariants steht nichts drin.

Kann mir einer von euch helfen?

MfG
Martin Weber
Ich bin ein Rüsselmops
  Mit Zitat antworten Zitat
Angel4585

Registriert seit: 4. Okt 2005
Ort: i.d.N.v. Freiburg im Breisgau
2.199 Beiträge
 
Delphi 2010 Professional
 
#2

Re: TWebbrowser und auf Klick auf einen Link reagieren

  Alt 23. Mär 2006, 10:07
Habs jetzt so gelöst:

Delphi-Quellcode:
procedure TtfBenutzer.WebBrowser1BeforeNavigate2(ASender: TObject;
  const pDisp: IDispatch; var URL, Flags, TargetFrameName, PostData,
  Headers: OleVariant; var Cancel: WordBool);
begin
ShowMessage(Copy(URL,8,Length(URL)-8));
Cancel:=True;
end;


procedure TtfBenutzer.Button1Click(Sender: TObject);
begin
WebBrowser1.Navigate('Test');
end;
Das Leben kann sooo einfach sein....

Copy(URL,8,Length(URL)-8); Das ist übrigens weil der TWebbrowser bei mir automatisch 'http://Test/' daraus macht

So wird der Link nur abgefangen und nicht ausgelöst.

Aber wie ich an das alt tag komme weis ich trotzdem nicht...
Martin Weber
Ich bin ein Rüsselmops
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#3

Re: TWebbrowser und auf Klick auf einen Link reagieren

  Alt 23. Mär 2006, 10:12
Hallo Martin,

ich würde dir helfen, wenn ich dein Problem verstehen könnte.

Hier verlierst du ein Byte:

Copy(URL,8,Length(URL)-8); Die zweite 8 muss eine 7 sein.

Grüße vom marabu
  Mit Zitat antworten Zitat
Angel4585

Registriert seit: 4. Okt 2005
Ort: i.d.N.v. Freiburg im Breisgau
2.199 Beiträge
 
Delphi 2010 Professional
 
#4

Re: TWebbrowser und auf Klick auf einen Link reagieren

  Alt 23. Mär 2006, 10:18
nö muss nicht:

http:// sind 7
/ am Ende ist 1..

macht insgesamt 8

Ich bastle eine Karte mit eine HTML Imagemap und will auf die Klicks auf die einzelnen Stellen reagieren, ohne jedoch eine Seite aufzurufen, sondern den Wert den das Feld hat auszuwerten.

Also mache ich das jetzt so, das ich als "href" den Wert angebe und den dann aus der URL extrahiere.
Martin Weber
Ich bin ein Rüsselmops
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#5

Re: TWebbrowser und auf Klick auf einen Link reagieren

  Alt 23. Mär 2006, 12:12
Du verlierst ein Byte, aber es ist dir egal, weil du genügend davon hast. Ist auch ein Standpunkt.

Zu deiner eigentlichen Frage: Das Ereignis OnBeforeNavigate2() hast du dir richtig ausgesucht. Es gibt noch andere Ansätze, aber vielleicht ist das ja für dich der richtige. Du kannst die Handhabung für komplexere Anwendungen noch vereinfachen, indem du ein eigenes Protokoll verwendest.

Code:
marabu:appid=demo&code=007&test=false
Delphi-Quellcode:
function TWebForm.CheckUrl(url: String): Boolean;
var
  s: TStrings;
begin
  Result := CompareText(ParseStr(url, ':'), 'marabu') = 0;
  if Result then
  begin
    s := TStringList.Create;
    s.Delimiter := '&';
    s.DelimitedText := url;
    ShowMessage(s.Text);
    s.Free;
  end;
end;

procedure TWebForm.WebBrowserBeforeNavigate2(Sender: TObject;
  const pDisp: IDispatch; var URL, Flags, TargetFrameName, PostData,
  Headers: OleVariant; var Cancel: WordBool);
begin
  Cancel := CheckUrl(url);
end;
marabu
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:56 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