Главная » Delphi » Базы данных » Как заполнить список ComboBox значениями поля таблицы

Как заполнить список ComboBox значениями поля таблицы

15:42
Полезно делать для формирования фильтров на форме
 
const cALL='<ВСЕ>';
Procedure Field2ComboBox(var fld:TStringField; var cbm:TComboBox; all:Boolean);
var bkm:TBookmark; // (c)DSKalugin
begin
cbm.Clear;
bkm:=fld.DataSet.GetBookmark;
fld.DataSet.DisableControls;
fld.DataSet.First;
try
while not fld.DataSet.EOF do begin
cbm.Items.Add(fld.AsString);
fld.DataSet.Next;
end;
if ALL then cbm.Items.Insert(0,cALL);
cbm.ItemIndex:=0;
fld.DataSet.GotoBookmark(bkm);
finally
fld.DataSet.EnableControls;
fld.DataSet.FreeBookmark(bkm);
end;
end;