DBLookupComBox简单用法

表BoardRoom中有字段state 取值如下:

1:表示“正常”

0:表示“维修中”

-1:表示“作废”

 

在界面中,我们不想显示1,0,-1这样的数据,而想显示“正常”,“维修中”,“作废”

当用户进行新增操作时,我们也不想让用户去选1,0,-1这样的数据,而想通过下拉“正常”,“维修中”,“作废”这些项让用户选择,

怎么办呢?

 

一般的字段,在DELPHI中我们通常都使用DBEDIT控件来直接关联到数据库中,但上述情形却不能直接DBComBox控件

这里提供一种解决方案:

 

假设主数据集为:ADO_BoardRoom,对应的DataSource为:DS_BoardRoom

 

添加一个数据集控件:ADO_StateItems,对应的DataSource为:DS_StateItems ,用于放下拉选项数据

 

为state字段添加一个DBLookupComBox控件,其中:

    DataSource设置为DS_BoardRoom ,DataField设置为state

    ListSource设置为DS_StateItems  ,ListField设置为stateName, KeyField设置为stateID

 

使用union all 将“正常”,“维修中”,“作废”,1,0,-1 组合成SQL并赋给ADO_StateItems数据集,如下:

 

select 1 as stateID,'正常'  as stataName union all select 0 as stateID,'维修中'  as stataName

 union all select -1 as stateID,'作废'  as stataName

 

这样就可以了。。。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值