dblookupcombobox不能编辑是怎么回事?(100分)

  • 主题发起人 主题发起人 yingjuan
  • 开始时间 开始时间
Y

yingjuan

Unregistered / Unconfirmed
GUEST, unregistred user!
在数据库程序中,
想作一个用户数据录入窗口,对于职工所在分部门想由用户自己输入(输到一定的程度就只需要从列表项里很方便的选择了)是不是应该用dblookupcombobox控件?但是为什么运行时不能编辑呢(readonly属性选的是false)
 
贴上代码
 
列表数据库和主数据库应该是不同的两个数据库
 
还是用dbcombobox吧
 
是说想用户输入的内容保存在选项列表中,以后就不必老是输入,只是选择就够了
 
需要写代码的
 
同意grace
 
dblookupcombobox的确不能编辑的,建议你用RxLib的TRXLookupEdit,它就能
Lookup,又能Edit。
 
有那么复杂吗?
DBLookupComboBox上覆盖一个DBEdit!
 
DBLookupComboBox的内容是从一个表来的,当然不能编辑,
 
同意低手,你把新的内容添加到items里面不就行了?
 
我也碰上了,后来通过更改源代码可以了,
要不要我发一份给你
 
各位:
DBLookupComboBox只提供了DropDownList模式而没有提供DropDown模式,是为了
数据参考的一致性。要实现DropDown模式很简单,如前所说:
1〉DBLookupComboBox上覆盖一个DBEdit,二者数据同源;
2〉DBEdit的KeyPress事件:if key = #13 then DBLookupComboBox.KeyValue:=DBEdit.Text;
保持与DBLookupComboBox与Table同步。
试试看,完全实现了DropDown模式的功能!根本不需要改源码或第三方控件。

>>yingjuan
要实现你的要求,用类似的方法,也很简单,DBLookupComboBox内置了Table的
查询功能,甚至不需要索引。
1〉DBLookupComboBox上覆盖一个“Edit”;
2〉DBLookupComboBox的Click事件:DBEdit.Text:=DBLookupComboBox.KeyValue;
3〉Edit的KeyPress事件:
if key =#13 then
begin
DBLookupComboBox1.KeyValue:=edit1.text;
if DBLookupComboBox1.Text='' then
if trim(edit1.Text)<>'' then
insert 记录;
end;
4〉效果:edit中输入已经存在的记录(如部门),自动查询定位。输入不存在的记录
自动插入;
5〉DBLookupComboBox内置的是精确查询,稍作修改,加入模糊查询代码,效果会很不错!
 
接受答案了.
 
后退
顶部