![]() |
Größe von Form1 an Ausmaße von TWebbrowser anpassen
Hallo.
Ich lade zufällige Bilder aus dem Internet in einen TWebbrowser (jpeg, animierte gifs, pngs etc.). Nun würde ich gerne erreichen, dass das Formular immer nur so groß ist, wie die aktuell angezeigte Seite/Bild im Webbrowser --> das keine Scrollbars da sind und das Formular auch nicht größer ist als notwendig. Habe leider nichts dazu gefunden im Netz. Jemand eine Idee? Danke |
Re: Größe von Form1 an Ausmaße von TWebbrowser anpassen
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:
Edit:
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; Achso: Mit der ermittelten Breite kannst du dann ja recht einfach die Breite der Form anpassen. Gruß Jürgen |
Re: Größe von Form1 an Ausmaße von TWebbrowser anpassen
Super, danke!
Hat mich auf die recht simple Lösung für mein Problem gebracht:
Delphi-Quellcode:
procedure TFrmMain.IEDocumentComplete(ASender: TObject; const pDisp: IDispatch; var URL: OleVariant);
begin Width:=IE.OleObject.Document.Images.Item(0).Width; Height:=IE.OleObject.Document.Images.Item(0).Height; end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:11 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz