Einzelnen Beitrag anzeigen

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, 13: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