【问题标题】:Firemonkey version of VirtualTreeViewVirtualTreeView 的 Firemonkey 版本
【发布时间】:2011-11-17 23:52:58
【问题描述】:

有没有人碰巧知道流行的VirtualTreeView 的Firemonkey 版本是否正在准备中?此外,是否有人收集了一些将自定义控件移植到 Firemonkey 的经验,并且可以估计将虚拟树视图移植到 Firemonkey 需要多少工作?我们需要这个控件,而切换到 Firemonkey 只是一种选择,前提是我们可以让这个控件起作用。

谢谢!

【问题讨论】:

  • 我确信大多数主要组件套件开发人员都在为 FireMonkey 重写他们的大部分产品。您是否直接联系过 VirtualTreeView 人员?链接:soft-gems.net/index.php?option=com_contact&Itemid=3
  • 另一方面,我预计许多商业开发商在花费大量美元之前会评估市场。对于开源项目,可能有的正在为 FM 积极开发,有的可能在观望。我预计很多(如果不是大多数)开源库都需要 FireMonkey 冠军来接手并制作 FM 版本。
  • 我不会屏住呼吸。他们确实将它移植到了 Delphi.NET,但我认为将它移植到 FireMonkey 并不容易。 (我是唯一一个对着火的猴子打字感到愚蠢的人吗?)
  • 但是有什么替代方案呢? Firemonkey 是否有任何可用的虚拟网格/树视图?

标签: delphi virtualtreeview delphi-xe2 firemonkey


【解决方案1】:

据我了解,FireMonkey 与 VCL 如此不同,以至于需要进行重大重写,基本上是从头开始重写控件...快速查看了谷歌代码的 SVN,看起来不像有人已经开始移植到 FM,但有用于 XE2 的 (VCL) 包。

【讨论】:

  • 这确实是一次重大的重写,可能从头开始。 FireMonkey 非常不同。 FireMonkey 不使用单体组件,它使用一组或多或少复杂的层,每个层都可以有自己的布局、颜色、渐变、方向等。组件代码只是操纵这些层,按名称对其进行寻址。可以使用具有多个不同嵌套组件的 TListBox 来完成虚拟树视图。由于(大多数)组件没有窗口句柄,这并不是它看起来的巨大资源浪费。
  • 谢谢,我接受了这个,因为这似乎是普遍的看法——即使它不是很令人满意。
【解决方案2】:

替代品...

FireMonkey 有自己的树视图,称为 FMX.TreeView。 Embarcadero documentation about it 非常小。与 VirtualTreeview 相比,它非常原始,但目前它可能是所有可用的。

如果您使用 VirtualTreeview 作为网格,那么您可能不得不求助于 Firemonkey 的 TGrid 或 TStringGrid 或 TDBGrid。 The grid implementation is fairly basic。但显然 TDBGrid 还不错。 Arnaud Bouchezsome screenshots of some Firemonkey Controls 并表示 TDBGrid 内容是虚拟的,并以屏幕截图为例。

很可能是第 3 方组件构建器,例如TMS(TAdvStringGrid)、Woll2Woll(InfoPower)、Berg(NextGrid5)等,都会出来一些东西。如果看起来 VirtualTreeview 不会被移植到 FireMonkey,那么其中一个将有机会产生一个可接受的替代方案。

【讨论】:

【解决方案3】:

我知道这个问题有答案。

但答案在某个时间点是正确的。

现在我有最小的 VirtualTree 端口到 Firemonkey。 看看我在 github 上的 fork https://github.com/livius2/Virtual-TreeView

我会努力争取多少空闲时间。 你可以想象开始有多么困难,因为 VCL 和 FMX 是完全不同的东西。

【讨论】:

    【解决方案4】:

    TMS 有一个用于 FMX 的虚拟树视图。支持安卓。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-01-18
      • 2013-10-02
      • 2013-08-16
      • 2015-02-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-06-29
      相关资源
      最近更新 更多