-1

我有一个 XE7 FMX And​​roid 表单中的 TImage 组件。我想将网络上的图像加载到它上面。我找到了这篇文章,但不幸的是它似乎只适用于 Delphi XE5。我可以使用 Indy 组件来执行这样的任务,但我想在项目中包含 Indy 之前用尽所有可能性。谷歌在这种情况下没有帮助,有人遇到过类似的情况吗?有没有办法在不使用 Indy 的情况下将图像从 http 站点加载到 TImage 组件?

4

1 回答 1

0

您在问题中引用的代码可以很容易地移植到 XE7,如果它确实不能在 XE7 中编译,我没有确认这一事实。

但是,该代码使用 Indy 执行 HTTP 下载。它在AsyncTask.HTTP单位中这样做。因此,您认为此代码是一种免费的 Indy、免费的库、下载 HTTP 内容的方式的分析是完全不正确的。你的问题的前提是错误的。

有没有办法在不使用 Indy 的情况下将图像从 http 站点加载到 TImage 组件?

当然有。你可以:

  1. 查找可以执行 HTTP 下载的其他网络库。
  2. 编写您自己的代码来执行 HTTP 下载。

后一种选择当然是可行的。毕竟,这就是 Indy 所做的一切。毫无疑问,它包含了平台网络库。因此,您可以编写自己的代码,使其位于平台网络库之上,但我认为这样做并没有多大意义。尤其是因为这是一项不平凡的任务。

于 2015-06-24T16:25:05.343 回答