Hallo Blumi,
Durchlaufe alle Bilder im TWebbrowser, ermittle die
URL und überprüfe, ob die
URL den Dateinamen enthält.
Beispiel:
Delphi-Quellcode:
uses
MSHTML;
function WB_ClickImgByFileName(WB: TWebbrowser; ImgFileName:
string): Boolean;
// Hinweis: Funktioniert nicht, falls sich das Bild in einem Frame befindet
var
iImgCounter: Word;
sImgHref:
string;
iHtmlDoc: IHtmlDocument2;
begin
Result := False;
iHtmlDoc := WB.Document
as IHtmlDocument2;
// Durchlaufe alle alle Bilder im TWebbrowser
for iImgCounter := 0
to WB.OleObject.Document.Images.Length - 1
do
begin
// URL des Bildes[iImgCounter] ermitteln
sImgHref := (iHtmlDoc.Images.Item(iImgCounter, 0)
as IHTMLImgElement).Href;
// Dateiname des Bildes[iImgCounter] überprüfen
if Pos(ImgFileName, sImgHref) <> 0
then
begin
try
// Click aufrufen
((iHtmlDoc.Images.Item(iImgCounter, 0)
as IHTMLImgElement)
as IHTMLElement).Click;
Result := True;
except
// Ein Fehler ist aufgetreten
end;
end;
end;
end;
Beispielaufruf:
ClickImgByFileName(Webbrowser1, meinbildxyz.gif);