Einzelnen Beitrag anzeigen

Benutzerbild von Delphi-Freak
Delphi-Freak

Registriert seit: 26. Sep 2004
Ort: Wien Nähe (Österreich)
321 Beiträge
 
Delphi 2006 Architect
 
#2

Re: Zur Laufzeit erzeugter HTML-Code in TWebbrowser darstell

  Alt 27. Jun 2005, 18:00
Naja, ich habe das irgendwann so gemacht:
Delphi-Quellcode:
procedure LoadCode(HTMLCode: string);
var
   sl: TStringList;
   ms: TMemoryStream;
begin
   WebBrowser1.Navigate('about:blank');
   while WebBrowser1.ReadyState < READYSTATE_INTERACTIVE do
      Application.ProcessMessages;

   if Assigned(WebBrowser1.Document) then begin
      sl := TStringList.Create;
      try
         ms := TMemoryStream.Create;
         try
            sl.Text := HTMLCode;
            sl.SaveToStream(ms);
            ms.Seek(0, 0);
            (WebBrowser1.Document as IPersistStreamInit).Load(TStreamAdapter.Create(ms));
         finally
            ms.Free;
         end;
      finally
         sl.Free;
      end;
   end;
end;
Ist zwar schon länger her, vielleicht gibts auch eine bessere Methode, aber damals hats funktioniert (obwohl ich den Code, wenn ich mich richtig erinnere, damals gar nicht richtig verstanden habe )


LG, Delphi-Freak


Edit: Irgendwie fällt mir da zwar auf, dass TStreamAdapter nur createt aber nicht gefreet wird. Ev. sollte man da eine weitere Variable einführen (vom Typ TStreamAdapter) und die danach dann freeen
Gerhard Pfister
*
»To him who loves us and has freed us from our sins by his blood [...] be glory and power for ever and ever! Amen.« (Revelation*1,*5?6)
  Mit Zitat antworten Zitat