在TWebBrowser中手动编写HTML

时间:2010-05-06 21:32:27

标签: delphi

编辑:看看乔恩的做法 我正在使用此处建议的策略:http://cc.embarcadero.com/Item/23992 来在TWebBrowser中获取我的HTML,但是当页面加载时我收到了一堆JavaScript错误。如果我单击“是”,我可以看到没有格式化的页面,我猜这个页面什么也没做。

我的理论是,因为HTML中的链接是相对的,所以浏览器无法加载任何链接。我已经从传递URL,'about:blank'到导航功能,到传递服务器主页 - 希望某些内部机制能够生成完整路径,但没有运气。

任何一个成功地能够手动将HTML写入TWebBrowser。

2 个答案:

答案 0 :(得分:9)

我通常使用这种方法:

//OnFormCreate:
begin
  WebBrowser.Navigate('about:blank');
end;

//OnButtonClick:
var
  Doc: Variant;
begin
  Doc := WebBrowser.Document;
  Doc.Clear;
  Doc.Write(Memo.Text);
  Doc.Close;
end;

delphi.about.com上也有一些很好的例子 以及www.delphidabbler.com

中的一些更复杂的例子

答案 1 :(得分:7)

由于HTML不是来自实时网址,因此您需要在HTML中包含<base href=...>标记,以便正确解析相对链接。