首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Delphis BindSource中提取LiveBindings对象?

如何在Delphis BindSource中提取LiveBindings对象?
EN

Stack Overflow用户
提问于 2016-11-28 13:03:18
回答 1查看 264关注 0票数 3

在Delphi10.1中,我有一个名为ObjectList的DogCollection,每个条目的类型都是TDog,这是一个自定义类。

多亏了malcolm groves的教程,我才能用我的DogCollection填充一个Stringgrid。

http://www.malcolmgroves.com/blog/?p=1084

现在,我希望能够在字符串网格中滚动,每次滚动时,我都希望从TDog类型中更新变量“TDog”,并在字符串网格中突出显示任何对象。

所以我有一个关于我的DogObjects的概述,也是我的狗狗的一个对象,我可以独立地查看/操作它。

在这一点上,我没有想法了。

如果这对您有任何帮助,我也不能让适配器的AfterScroll事件触发,即使我用RightClick-> Adapter添加了一个Navigator。

谢谢你的帮助和时间。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-11-28 18:02:15

不一定要理解这个问题,但我认为您不需要有一个变量"CurrentDog“来处理列表中选定的对象。

您可以为您的狗创建所需的所有组件(TEdit) (名称、年龄.)并将这些组件绑定到相同的字段(名称、年龄.)在您的TDataGeneratorAdapter中(它链接到TAdapterBindSource的"Adapter“属性)。

然后,当您在网格中选择一行时,相应的对象将出现在编辑组件中。当您修改"Text“属性时,网格将被更新。

编辑: InternalAdapter

经过几次搜索,您可以使用InternalAdapter of TAdapterBindSource获取对象。

在OnClick事件上:

代码语言:javascript
复制
procedure TForm1.Button1Click(Sender: TObject);
var
  Adapter: TBindSourceAdapter;
begin
  Adapter:= AdapterBindSource1.InternalAdapter;

  CurrentDog:= TDog(Adapter.Current);
end;
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40845034

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档