去掉Dblookupeh控件的自己填充功能

这个自动填充功能当数据出现 aa aaa aaaa 时就会出现aaa 最后一个a删不掉的情况。解决方法就去掉这个自动填充功能。在特定情况可以加快这个控件的速度 打开Dblookupeh.pas 文件一般在 delphi/bin/ 目录下找到 function TCustomDBLookupComboboxEh.LocateStr(Str: String; PartialKey: Boolean): Boolean; var Options: TLocateOptions; CurOnChangeEvent: TNotifyEvent; begin Result := False; if not FListActive or not CanModify(True) then Exit; if PartialKey then Options := [loCaseInsensitive, loPartialKey] else Options := [loCaseInsensitive]; try Result := FListLink.DataSet.Locate(FListField.FieldName, Str, Options); if Result then begin FTextBeenChanged := False; CurOnChangeEvent := OnChange; OnChange := HookOnChangeEvent; SetKeyValue(FListLink.DataSet.FieldValues[FKeyFieldName]); SetEditText(FListField.DisplayText); SelStart := Length(Text); SelLength := Length(Str) - SelStart; OnChange := CurOnChangeEvent; if FTextBeenChanged and Assigned(OnChange) then OnChange(Self); end else if Style = csDropDownEh then SetKeyValue(Null); except { If you attempt to search for a String larger than what the field can hold, and exception will be raised. Just trap it and reset the SearchText back to the old value. } if Style = csDropDownListEh then begin SetEditText(Text); SelStart := Length(Text); SelLength := Length(Text) - SelStart; end else SetKeyValue(Null); end; end; ------------- 把if Result then 改为 if False then 再打开原程序,,重新编绎
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值