diff --git a/lcl/dbctrls.pp b/lcl/dbctrls.pp index 1c8517c735..c06f6ee978 100644 --- a/lcl/dbctrls.pp +++ b/lcl/dbctrls.pp @@ -860,6 +860,7 @@ Type procedure SetLookupCache(const Value: boolean); procedure SetNullValueKey(const AValue: TShortCut); procedure UpdateLookup; + procedure UpdateItemIndex; protected procedure InitializeWnd; override; procedure DestroyWnd; override; diff --git a/lcl/include/dblookupcombobox.inc b/lcl/include/dblookupcombobox.inc index 9b77c04413..ff204c8f27 100644 --- a/lcl/include/dblookupcombobox.inc +++ b/lcl/include/dblookupcombobox.inc @@ -63,7 +63,7 @@ end; procedure TDBLookupComboBox.DataChange(Sender: TObject); begin - UpdateLookup; + UpdateItemIndex; end; procedure TDBLookupComboBox.DoOnSelect; @@ -187,16 +187,21 @@ begin end; procedure TDBLookupComboBox.UpdateLookup; -var - i: Integer; begin if ([csLoading, csDestroying] * ComponentState) = [] then begin FLookup.Initialize(FDataLink, Items); - i := FLookup.GetKeyIndex; - ItemIndex := i; - if i = -1 then - Text := ''; + UpdateItemIndex; end; end; +procedure TDBLookupComboBox.UpdateItemIndex; +var + i: Integer; +begin + i := FLookup.GetKeyIndex; + ItemIndex := i; + if i = -1 then + Text := ''; +end; +