在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';
[解决办法]
文本框 和 下拉框 关联?
文本框的按键事件判断最后所输入的词,到下拉框里匹配再自动显示下拉
[解决办法]
直接写代码,在cxdbcombobox的变化事件里面写一个查询的直接根据输入的快捷码查询出需要的然后加载显示到cxdbcombobox上面就可以了。
[解决办法]
没有ReadOnly或者Enabled属性吗?
要不就把控件放在Panel里面,改变Panel的Enabled属性