D
delphi1234
Unregistered / Unconfirmed
GUEST, unregistred user!
假设有两个表:
A表有字段 AID
B表有字段 BID, BNAME
其中AID=BID
一个下拉列表框显示BNAME字段中的内容.但它保存的内容为AID,它是关联A表中AID字段.
要达到的效果:当点击一个下拉列表框时,列表框显示的是BNAME字段中的内容.当A表 的数据记录发生改变时.列表框也依据AID=BID会显示不同的BNAME内容.
要求:1.只能使用一个datasource和adodataset,而且这datasource只是用来使列表框关联字段AID,运行时.效果应该是和使用dblookupcombobox(其中使用两个datasoure和adodataset设置Listsource和listfield)时的效果一样.
另外,不能再次使用别的数据组件来关联它,也就是说它所有的操作都是要通过可公用的函数或过程来实现,这样达到的效果是当一个工程中如果类似的下拉列表
很多的话,就不必放4倍于列表框的数据组件,而只需要2倍于它的数据组件.
2.当浏览记录或编辑时,列表框不会出现空白的BUG.
3.具体使用什么控件没有限制,关键是能实现以上要求;但是一定要是下拉列表框类型的;
附:我以前做过这样的.但是效果不是很理想.我是写了一个过程和一个函数来实现在下拉表中数据的动态填充和数据浏览时BNAME的显示.但是有BUG,就是当处于编辑状态时,它会清空TEXT.当记录改变时,不会相应改变BNAME值.所以我在此提出来,请各位高手关注与支持!!
A表有字段 AID
B表有字段 BID, BNAME
其中AID=BID
一个下拉列表框显示BNAME字段中的内容.但它保存的内容为AID,它是关联A表中AID字段.
要达到的效果:当点击一个下拉列表框时,列表框显示的是BNAME字段中的内容.当A表 的数据记录发生改变时.列表框也依据AID=BID会显示不同的BNAME内容.
要求:1.只能使用一个datasource和adodataset,而且这datasource只是用来使列表框关联字段AID,运行时.效果应该是和使用dblookupcombobox(其中使用两个datasoure和adodataset设置Listsource和listfield)时的效果一样.
另外,不能再次使用别的数据组件来关联它,也就是说它所有的操作都是要通过可公用的函数或过程来实现,这样达到的效果是当一个工程中如果类似的下拉列表
很多的话,就不必放4倍于列表框的数据组件,而只需要2倍于它的数据组件.
2.当浏览记录或编辑时,列表框不会出现空白的BUG.
3.具体使用什么控件没有限制,关键是能实现以上要求;但是一定要是下拉列表框类型的;
附:我以前做过这样的.但是效果不是很理想.我是写了一个过程和一个函数来实现在下拉表中数据的动态填充和数据浏览时BNAME的显示.但是有BUG,就是当处于编辑状态时,它会清空TEXT.当记录改变时,不会相应改变BNAME值.所以我在此提出来,请各位高手关注与支持!!