在delphi7 中,如何让cxdbcombobox组件实现代码快速录入?
本人想在程序中使用代码录入功能,比如:在下拉列表cxdbcombobox中输入“12”,列表中自动跳到对应的中文值“因公护照”项,就如DELPHI7程序编辑器自带的代码提示功能。如何实现,请各位高手赐教!最好有源码提供。
[解决办法]
使用 TcxDBLookupComboBox ,而不是 TcxDBComboBox 。
假定
待编辑数据的数据源叫 DataSource1、被编辑字段名为 cmmc;
提供下拉数据的数据源叫 DataSource2、里面有对应 DataSource1 的字段中文内容的字段名叫 mc 、编码字段叫 bm。
设置(可以在设计时设置,如需动态设置,则按下列代码):
cxDBLookupComboBox1.DataBinding.DataSource:=DataSource1;
cxDBLookupComboBox1.DataBinding.DataField:='cmmc';
cxDBLookupComboBox1.Properties.ListSource:=DataSource2;
cxDBLookupComboBox1.Properties.KeyFieldNames:='mc';
cxDBLookupComboBox1.Properties.ListColumns:='bm';
cxDBLookupComboBox1.DataBinding.DataSource:=DataSource1;
cxDBLookupComboBox1.DataBinding.DataField:='cmmc';
cxDBLookupComboBox1.Properties.ListSource:=DataSource2;
cxDBLookupComboBox1.Properties.KeyFieldNames:='mc';
cxDBLookupComboBox1.Properties.ListColumns:='bm;mc';