簡體   English   中英

如何將HTML字符串加載到Firemonkey TWebBrowser中?

[英]How can I load an HTML string into a Firemonkey TWebBrowser?

我正在嘗試使用Firemonkey TWebBrowser加載運行時生成的一些HTML。 HTML是一個Delphi字符串。

我看過以下代碼: http : //delphi.about.com/cs/adptips2004/a/bltip0104_4.htm

procedure WBLoadHTML(WebBrowser: TWebBrowser; HTMLCode: string) ;
var
   sl: TStringList;
   ms: TMemoryStream;
begin
   WebBrowser.Navigate('about:blank') ;
   while WebBrowser.ReadyState < READYSTATE_INTERACTIVE do
     Application.ProcessMessages;

   if Assigned(WebBrowser.Document) then begin
     sl := TStringList.Create;
     try
       ms := TMemoryStream.Create;
       try
         sl.Text := HTMLCode;
         sl.SaveToStream(ms) ;
         ms.Seek(0, 0) ;
         (WebBrowser.Document as IPersistStreamInit).Load(TStreamAdapter.Create(ms)) ;
       finally
         ms.Free;
       end;
     finally
       sl.Free;
     end;
   end;
end;

procedure TForm1.FormCreate(Sender: TObject) ;
var
  sHTML : string;
begin
  sHTML := '<a href="http://delphi.about.com">GOTO</a>' +
           '<b>About Delphi Programming</b>';
  WBLoadHTML(WebBrowser1,sHTML) ;
end;

但這似乎是為與Firemonkey TWebBrowser不兼容的VCL應用程序設計的。

我如何使用Firemonkey控件實現與此代碼示例相同的功能?

使用WebBrowser LoadFromStrings方法。

您可以在DLL ...中實現此功能,詳細信息可在此處下載示例

另一個選擇是考慮這個開源TWebBrowserEx項目 實際上,它將使用平台的常規Web瀏覽器功能。 但是,對於Windows,這意味着在FMX項目中,您將使用VCL來支持Web瀏覽器。.這可能會或可能不會產生意外的影響。

此類為全平台FireMonkey應用程序提供WebBrowser。

平台=>組件

  • Windows => IWebBrowser(IE)
  • OS X => WebView(Safari)
  • iOS => WebView
  • Android => WebView

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM