Einzelnen Beitrag anzeigen

Pfoto

Registriert seit: 26. Aug 2005
Ort: Daun
541 Beiträge
 
Turbo Delphi für Win32
 
#2

Re: Größe von Form1 an Ausmaße von TWebbrowser anpassen

  Alt 5. Apr 2009, 21:05
Hallo Cyberstorm,

ich habe mal folgende Methode umgeschrieben, da ich etwas ähnliches
verwende. Es wird rekursiv solange gesucht, bis das erste Bild auftaucht.
Du kannst Document.Root übergeben, um die gesamte Website abzusuchen.

Falls deine Bilder eine ID haben, kannst du natürlich auch per GetElementByID()
danach suchen.

Delphi-Quellcode:
  procedure ReadFirstImg(aIHTMLElement: IHTMLElement;
    var aSrc: string; var aWidth: integer);
  var
    ec: IHTMLElementCollection;
    ie: IHTMLImgElement;
    v: OleVariant;
    i: integer;

  begin
    If not assigned(aIHTMLElement) then exit;
    ec := aIHTMLElement.children as IHTMLElementCollection;
    for i:= 0 to ec.length-1 do
    begin
      v := 0;
      If (Succeeded((ec.item(v, i) as IHTMLElement).QueryInterface(IHTMLImgElement, ie))) then
      begin
        aWidth:= ie.width;
        aSrc:= ie.src;
        break;
      end else
        ReadFirstImg(ec.item(v, i) as IHTMLElement, aSrc, aWidth);
    end;
  end;
Edit:
Achso: Mit der ermittelten Breite kannst du dann ja recht einfach
die Breite der Form anpassen.

Gruß
Jürgen
Jürgen Höfs
  Mit Zitat antworten Zitat