Delphi多索引通用列表

时间:2012-01-10 17:06:41

标签: delphi generics

我正在寻找一个TList后代,它允许我添加一个或多个索引,让我通过这些索引进行搜索和查看。

30分钟的谷歌搜索会议让我一无所获。

之前一定需要这样做。我的意思是你有多少次内存索引集合,然后需要以不同的顺序显示它?

谢谢,

AJ

4 个答案:

答案 0 :(得分:7)

您考虑过TClientDataSet了吗?它可以在运行时进行排序和过滤。可以在http://edn.embarcadero.com/article/29056

找到一篇文章

答案 1 :(得分:7)

如果您正在寻找Delphi中Multimap的通用实现,LU RD已经在delphi-coll上面的评论中指出了正确的方向。

命名空间 Collections.MultiMaps 提供了许多类:

  • TDistinctMultiMap:通用的多地图集合。
  • TDoubleSortedDistinctMultiMap:通用的多地图集合。
  • TDoubleSortedMultiMap:通用的多地图集合。
  • TMultiMap:通用的多地图集合。
  • TObjectDistinctMultiMap:用于存储对象的通用多地图集合。
  • TObjectDoubleSortedDistinctMultiMap:用于存储对象的通用多地图集合。
  • TObjectDoubleSortedMultiMap:用于存储对象的通用多地图集合。
  • TObjectMultiMap:用于存储对象的通用多地图集合。
  • TObjectSortedDistinctMultiMap:用于存储对象的通用不同多地图集合。
  • TObjectSortedMultiMap:用于存储对象的通用多地图集合。
  • TSortedDistinctMultiMap:通用的不同多地图集合。
  • TSortedMultiMap:通用的多地图集合。

答案 2 :(得分:0)

您可以为索引使用已排序的TStringList。虽然将索引封装到主列表对象中可能会很好,但没有理由让它阻止你。

创建一个新的TStringList并让Object指针指向您需要的任何内容。

答案 3 :(得分:-1)

我不确定delphi是否支持多个索引列表...也许您可以尝试使用TMS TColumnListBox?