Быстрый поиск в DBGrid

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

jec
новенький
Сообщения: 14
Зарегистрирован: 19.01.2011 11:57:57

Re: Быстрый поиск в DBGrid

Сообщение jec »

Очень полезный (думаю, не только для меня) топик. Конечно, справедливо для любых "отображалок". Спасибо!
PS. Не сочтите за флуд...
jec
новенький
Сообщения: 14
Зарегистрирован: 19.01.2011 11:57:57

Re: Быстрый поиск в DBGrid

Сообщение jec »

Ism писал(а):Dbgrid.datasource.dataset.locate (....)

мгновенный поиск с интересными возможностями, например поиск по части слова

А можно с примером кода... Чтобы по мере набора указатель перемещался. Какое событие обрабатывать для TEdit и какие опции поиска использовать в locate до ещё чтобы и регистр не учитывался. Кликом по кнопке переходит на запись, однако регистронезависимость и поиск по части слова не получается.
Vadim
долгожитель
Сообщения: 4112
Зарегистрирован: 05.10.2006 08:52:59
Откуда: Красноярск

Re: Быстрый поиск в DBGrid

Сообщение Vadim »

jec
Для того, чтобы включить регистронезависимость и возможность поиска по части слова, надо в третий параметр метода Locate() включить опции loCaseInsensitive и loPartialKey. Должно быть что-то вроде:

Код: Выделить всё

Locate('Название_поля', VarArrayOf(['Значение_которое_ищем_в_этом_поле']), [loCaseInsensitive, loPartialKey]);
Ответить