【问题标题】:Delphi: How to check if webbrowser has successfully loaded the page?Delphi:如何检查网页浏览器是否已成功加载页面?
【发布时间】:2012-07-19 20:16:05
【问题描述】:

我有一个简单的代码:

WebBrowser1.Navigate('www.foo.com');

当然,有时浏览会失败,浏览器会显示错误消息。
当这种情况发生时,我该如何发现?
我想要这个,以便我可以制作某种自定义日志。

【问题讨论】:

  • 我想知道您是否可以检查 TWebBrowser.ReadyState 是否成功(可能在 while 循环中或使用 TTimer)。如果 ReadyState 没有在合理的时间内返回 READYSTATE_COMPLETE,请提出您自己的错误。

标签: delphi error-handling twebbrowser


【解决方案1】:

我假设出现问题时会调用 OnNavigateError 事件处理程序。

【讨论】:

  • 奇怪,但似乎我的 TWebBrowser 不支持 OnNavigateError,即使我在 MSDN 上发现它已应用于它。为什么是这样?顺便说一句,我正在使用 Delphi7。
  • 不,我绝对确定 OnNavigateError 丢失了。事实上WebBrowser1.onNavigateError:=<function>; 抛出一个错误,告诉onNavigateError 没有被声明。我该怎么办?
  • @SmRndGuy:你是对的; D7中没有。 (D7 导入了一个非常旧版本的 IE 类型库 (SHDocVw)。您可能需要删除它并导入更新版本的类型库以使用更现代版本的 IE 或使用类似免费软件 TEmbeddedWB ,它公开了更多的功能。
  • k.现在我知道了问题是什么,我可以继续浏览并解决它。谢谢。
猜你喜欢
  • 2010-12-20
  • 1970-01-01
  • 2011-10-28
  • 1970-01-01
  • 2015-02-08
  • 2018-01-08
  • 1970-01-01
  • 2020-07-01
  • 1970-01-01
相关资源
最近更新 更多