Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

быстрый поиск по выпадающему списку DBGrid [D7]


dUM ©   (2004-12-09 22:14:00) 

Господа, подскажите, как реализовать быстрый поиск по выпадающему списку в DBGrid? То есть послать для списка определённой колонки нечто вроде CB_SELECTSTRING. Или реально сделать иначе?

Выпадающий список реализован путём заполнения DBGrid.Columns[i].PickList.


dUM   (2004-12-10 23:13:00) [1]

>DenK_vrtz ©   (10.12.04 11:21) [11]

Да нет, мне всё очень нравится :))
Только непонятно как включить в PickList-е поиск по буквам. Не подскажите?
:)


DenK_vrtz   (2004-12-10 11:21:00) [2]

>dUM ©   (10.12.04 11:14) [9]

Ну, дорогой товарисч, вам и "О" не буква и 0 не цифра.
В спрашивали про PickList? Вам ответили.
Не устраивает - пишите свой поисковик

:)


Sergey13   (2004-12-10 11:19:00) [3]

2[9] dUM ©   (10.12.04 11:14)
>А если вводимого имени, например "Ихтиандр" ;)
Это лишний раз доказывает, что это вымышленный персонаж. 8-)


dUM   (2004-12-10 11:14:00) [4]

>ЮЮ ©   (10.12.04 10:37) [8]
>
>вводя буковки, когда список раскроется :)

:))
А если вводимого имени, например "Ихтиандр" ;) - нет в списке, то пользователь не сможет его ввести при открытом списке. Кроме того отсутствует наглядность введённого текста. То есть введённого текста не видно! :)

Не вариант :)


ЮЮ   (2004-12-10 10:37:00) [5]

вводя буковки, когда список раскроется :)


dUM   (2004-12-10 10:30:00) [6]

>DenK_vrtz ©   (10.12.04 09:24) [6]
>
>В PickList'е поиск по введенным буквам уже реальзован

А как этот поиск инициализировать, применительно к DBGrid?


DenK_vrtz   (2004-12-10 09:24:00) [7]

В PickList'е поиск по введенным буквам уже реальзован


Ditrix   (2004-12-10 09:22:00) [8]

попробуй  lookup поле + EHLib


dUM   (2004-12-10 09:05:00) [9]

Видимо я нечётко выразил проблему. Приведу пример. Если в компоненте DBComboBox заполнить свойство Items, допустим набором имен, то при вводе строки будет осуществляться быстрый поиск по элементам Items. То есть если пользователь ввёл в комбобоксе "А", то в компоненте будет строка "Андрей", причём последние (невведённые) буквы "ндрей" будут выделены селектом. Если после этого пользователь нажимает "р", в комбобоксе сразу появится "Артём", и с последними буквами "тём" будет тоже самое (они будут выделены селектом:)

То есть при нажатии на любую кнопку, шлётся сообщение типа CB_SELECTSTRING, и выводится одна из строк Items, в которой обнаруживается первое вхождение введённой.

Вопрос: как можно реализовать это в DbGrid-е?


ЮЮ   (2004-12-10 04:41:00) [10]

Но если очень хочется, то у TStrings есть методы IndexOf и IndexOfObject


ЮЮ   (2004-12-10 04:38:00) [11]

А чего искать-то намерен? В какой момент? И для чего? Посмотри в сторону Lookup-полей.


turonix   (2004-12-09 23:48:00) [12]

А может будет проще послать запрос select с нужными параметрами поиска в БД? В большинстве случаев в СУБД гораздо лучше и главное быстрее реализованны методы поиска и выбора чем в клиентских компонентах...


Наверх

Титульная страница Поиск, карта сайта Написать письмо