0

我想隐藏滚动条的表单上有一个 TWebbroser

在 WebBrowser1DownloadComplete 我把 WebBrowser1.OleObject.document.body.scroll:='no'; 但这会导致 AV。如果单击继续,我可以看到滚动条实际上​​已被删除,因此代码必须是正确的。

我想要做的是从谷歌地图中显示一个页面,其中包含我添加的许多标记。此页面需要打印在 A4 页面上,但直接从 TWebbrowser 打印太大(或者至少我无法让它工作)。所以我将它保存为 JPG 图像并将其加载到另一个表单上,使用 DevExpress 打印系统在 A4 页面上使用我想要的页眉和页脚打印它。除了删除滚动条外,一切都像我想要的那样工作。

为了访问谷歌地图,我使用来自http://www.cadetill.com/gmlib/的 gmLibrary - 非常好的库,它有一个我喜欢的价格标签。

4

1 回答 1

0

只需将您的代码放在 DocumentComplete 事件中即可删除 AV。

如果控件是嵌入的,则删除滚动条的 IE HTML/CSS 技巧将无法可靠地工作。要真正删除滚动条,您必须使用 IDocHostUIHandler 接口继承 TWebBrowser。在 GetHostInfo 中,您必须至少设置 DOCHOSTUIFLAG_SCROLL_NO 标志。

您可以考虑使用现有的后代之一,例如“嵌入式 Web 浏览器组件包”(http://www.bsalsa.com/)。

于 2013-01-01T19:41:00.260 回答