我想基于另一条记录(在同一个TClientDataSet中)在TClientDataSet中追加记录。问题是我无法访问TClientDataSet中的另一条记录,因为光标指向我正在追加的行。我找不到另一种方法来访问同一TClientDataset中的其他记录。
当然我可以使用额外的TClientDataSet,复制一些东西并以这种方式解决它,但我不喜欢那个解决方案。
除了移动光标之外,有没有办法访问TClientDataset中的行/记录?
答案 0 :(得分:15)
执行此操作的唯一方法是完全剖析ClientDataSet.Data属性内容。
这意味着您需要自己编写大部分ClientDataSet功能。
将光标克隆到新的ClientDataSet中更容易,然后使用该光标浏览记录。然后,您可以使用旧的ClientDataSet来执行追加。
本文介绍了克隆游标: Cloning ClientDatSet Cursors
- 的Jeroen
答案 1 :(得分:0)
您可以查看TClientDataSet.CloneCursor方法。有关更多信息,请查看:http://edn.embarcadero.com/article/29416