|
#1
|
|||
|
|||
ComboBox как в IE
Доброго всем времени суток!
Есть необходимость создать компонент очень похожий на строку адреса в IE. Т.е. это ComboBox, список элементов которого загружается из БД. Можно вводить текст с клавиатуры, при этом список ComboBox-а должен автоматически фильтроваться. Надеюсь понятно объяснил. Очень надеюсь на вашу помощь! |
#2
|
|||
|
|||
Загрузка с БД. БД=файл list.txt
Код:
procedure TForm1.FormCreate(Sender: TObject); var f:tstringlist;i:integer; begin f:=tstringlist.Create; f.LoadFromFile('list.txt'); for i:=0 to f.count-1 do begin cb.AddItem(string(f.Strings[i]),cb); end; end; |
#3
|
|||
|
|||
Фильтрование
Код:
procedure TForm1.cbChange(Sender: TObject); var f:tstringlist;i:integer; begin f:=tstringlist.Create; f.LoadFromFile('list.txt'); for i:=0 to f.count-1 do begin if cb.text=Copy(string(f.Strings[i]),1,length(cb.text)) then cb.AddItem(string(f.Strings[i]),cb); end; end; |
#4
|
|||
|
|||
Как-то все сложно...
БД формата Access. Есть очень удобный компонент DBLookupComboBox (кажется так ). Если в качестве источника указать ADOQuery, то фильтрацию можно организовать простым ищменеием запрса SQL. Только есть одна проблема. Я не знаю как сделать так, чтобы в этот компонент можно было вводить текст( |
#5
|
|||
|
|||
Извини, с БД Access не работаю. Обратись в раздел Базы Данных
|
#6
|
|||
|
|||
Да это не важно. Компонент DBLookupComboBox с Access-ом никак не связан.
|