所以,我一直在组合框中使用两个表之间的LiveBindings来获取外键的ID和描述(使用Item.LookupData和Item.text属性)并将键分配给另一个表中具有SelectedValue属性的字段。这工作正常我猜,但我使用自定义的dbnavigator控件来作出“登记表”。 我正在使用这样的方法来插入:adotablealuno.FieldValues['Nome']:=editnomeAluno.Text;
但我无法找到如何以这种方式使用组合框,我已经尝试了ItemIndex和Selected属性,但没有任何这项工作(我' m使用Access DB btw)。如何在ComboBox中使用我的外键?Delphi Firemonkey组合框插入AdoTable
0
A
回答
2
其实我已经说过这个question,很长一段时间没有好的答案。我找到了一种我目前正在使用的方法。至少我知道我会得到可靠的数据。 您需要以相似的方式处理OnFillingListItem
事件的LinkFillControlToField
链接,并在ComboBox
项目中存储ID号。我使用Tag
属性来达到这个目的,尽管它实际上并不好。
procedure TForm1.LinkFillControlToField1FillingListItem(Sender: TObject;
const AEditor: IBindListEditorItem);
begin
(AEditor.CurrentObject as TListBoxItem).Tag :=
YourLookuptable.FieldByName('id').AsInteger;
end;
然后从ListBox1.Selected.Tag中获取物品ID。文本值可以通过ComboBox1.Selected.Text
访问。
附加。
您制作了类似LinkFillControlToField
的链接。
然后选择此链接并创建OnFillingListItem
事件处理程序的链接(选择Object Inspector中,双击OnFillingListItem
组合框的事件选项卡)。事件处理程序(空程序)将出现。它会被命名为TForm1.LinkFillControlToField1FillingListItem(...
然后你写代码设置id属性到项目的标签。
相关问题
- 1. Delphi 10 Firemonkey - 不能从adoTable拖放Tedits
- 2. 使用Delphi Firemonkey的组合框中的键/值对
- 3. 更改delphi中的组合框的字体颜色firemonkey mobile
- 4. 样式firemonkey组合框组件
- 5. Delphi,FireMonkey和PostgreSQL
- 6. 在delphi Firemonkey
- 7. 插入查询组合框
- 8. 插入组合框的值
- 9. 无法插入组合框
- 10. FireMonkey - 造型设计组合框
- 11. Delphi XE6 Firemonkey表格
- 12. Delphi XE2 FireMonkey和ssl
- 13. Delphi Firemonkey TGrid用法
- 14. Delphi XE2:firemonkey和IDirect3DDevice9
- 15. 德尔福更新记录的插入如果需要从Adotable 2到AdoTable 1
- 16. 用Delphi 5在列表视图单元格中插入组合框
- 17. 从组合框插入使用php
- 18. 从C#组合框中插入ID到
- 19. 插入列表到组合框
- 20. 将对象插入组合框
- 21. 在组合框中插入DateTime格式
- 22. 未插入Windows API组合框数据
- 23. 通过代码插入组合框
- 24. Delphi XE2 FireMonkey报告选项
- 25. FireMonkey中的Delphi XE4 stringgrid selectcell
- 26. Delphi XE8 FireMonkey TMemo透明?
- 27. Delphi XE5 Firemonkey TStringGrid OnClick事件
- 28. Delphi中的ADO&DBGrid/FireMonkey XE2
- 29. delphi firemonkey:播放视频
- 30. Delphi Firemonkey TLayout mousedown not firing
我会试试这个。我只是不知道这是从哪个控制。我把它放在组合框或绑定中? –
@GuilhermeRaguzzoni我追加了我的答案,但是,我想你已经知道了。 –
是的,我已经得到了,但是,你做了一个很好的补充=) –