Hi
Der EmbeddedWB bietet eine Menge Events für solche Zwecke an. Wenn das Dokument geladen ist, dann wird das DocumentComplete gefeuert. Dort kannst du auf alle geladenen
HTML Elemente per Doc2 zugreifen und diese erweitern/manipulieren. Um z.b. eine Liste aller geladenen Links zu erhalten, kannst du so vorgehen:
Code:
var
lDispatch: IDispatch;
lHTMLCollection: IHTMLElementCollection;
lHTMLElement: IHTMLElement;
i: Integer;
begin
Result := nil;
if Doc2 = NIL then begin
Exit;
end;
// Ermittle alle Elemente
lDispatch := Doc2.all;
if Assigned(lDispatch) then begin
lDispatch.QueryInterface(IHTMLElementCollection, lHTMLCollection);
if Assigned(lHTMLCollection) then begin
// Gehe alle Elemente durch
i := 1;
while (i <= lHTMLCollection.length) do begin
// Ermittle mal das HTMLElement
lDispatch := lHTMLCollection.item(pred(i), 0);
lDispatch.QueryInterface(IHTMLElement, lHTMLElement);
if Assigned(lHTMLElement) then begin
if (CompareText(lHTMLElement.TagName, 'A') = 0) then begin
-> Hier weisst du, eigenes Verhalten implementieren
end;
end;
inc(i);
end;
end;
end;
Willst du eigenes Verhalten einbauen, dann erweitere das
HTML Element. Du kannst z.b. die Einträge aus dem
FTP auslesen und das OnClick auf ein eigenes Event umbiegen (Jedes
HTML Element hat ein OnClick Event).