Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.
Наладить общение поможет, если вы подпишитесь по почте на новые темы в этом форуме.
| 1147 |
Сообщение
#1
|
![]() Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 205 Пол: Мужской Реальное имя: Евгений Репутация: 0 |
В базу данных посредством DBEdit вводятся фамилии, которые после ввода отображаются в соответствующем поле DBGrid. Проблема в том что фамилия одного и того же человека не всегда может вводиться правильно. Чтобы этого избежать, вводится дополнительная таблица в MSAccess содержащая только список фамилий. Отсюда вот какой вопрос: возможно ли чтобы при вводе фамилии, появлялось что-то вроде выпадающего списка с фамилиями из таблицы в MSAccess, т.е. допустим набираются начальные буквы - Ива, а в выпадающем списке уже видны все фамилии, начинающиеся на Ива, пользователь видит среди них нужную - Иванов, и выберает ее. Таким образом, в БД всегда вводится правильная фамилия. Есть ли в Delphi компонент, наиболее оптимально отвечающий данным требованиям? Т. к. похоже DBEdit придется заменить потому что для этой цели он не годится?
|
![]() ![]() |
| volvo |
Сообщение
#2
|
|
Гость |
На форме - DBGrid1, отображающий информацию, связанный с ADOTable1 через DataSource1. Также на форме - ADOQuery1, изначально для нее SQLText = 'SELECT * FROM table3' (у меня таблица Table3 содержит список фамилий).
Кладу на форму TDBComboBox, связываю его с тем же DataSource1, который связан с DBGrid-ом, поскольку мне надо, чтобы обновлялась информация в той же, рабочей таблице ADOTable1... У этого комбобокса не забываю установить нужное поле, в которое будет писАться информация. А вот теперь - самое интересное: как, собственно, осуществить сам выбор? А очень просто: при печати в DBComboBox я ничего делать не буду. Буду обрабатывать напечатанное значение по открытию списка, т.е., procedure TForm1.DBComboBox1DropDown(Sender: TObject); // нажали на кнопку со стрелкой?Собственно, это - все... Все работает. Единственное, что не происходит - это нельзя при открытом выпадающем списке печатать. Вернее, печатать-то можно, вот обновляться он не будет в момент печатания. Чтоб обновился - надо закрыть и переоткрыть. Хочешь - попробуй повесить это на DBComboBox1Change, тогда при вводе очередного символа будет обновляться выпадающий список. Только вот я не экспериментировал, не знаю, будет ли он опять открываться после обновления, или то на то и выйдет, и его надо будет опять открывать вручную... Пробуй |
1147 Выпадающий список - ? 26.02.2010 19:02
volvo Бери обычный DBComboBox, вешай ему в источник либо… 26.02.2010 21:32
1147 Какие преимущества DBComboBox перед DBLookupComboB… 1.03.2010 21:10
volvo Исходя из твоего описания - у тебя нет никаких код… 1.03.2010 21:20
is gabapentin a controlled subst Viagra Ohne Potenzstorung 9.12.2021 6:22
1147 LIKE это с использованием фильтра да? Почему по On… 1.03.2010 22:02
how long does gabapentin stay in How Many Days Amoxicillin Cat 4.12.2021 15:31
1147 В случае с DBComboBox1DropDown все прекрасно работ… 6.03.2010 5:14
buy cialis online no prescriptio Where Can I Buy Proventil Inhaler 6.11.2021 9:35
how long does it take for propec cialis tomar media pastilla 21.12.2021 11:33
nishaknapp Why not settling on games that is fun and at the s… 16.01.2023 6:18![]() ![]() |
|
Текстовая версия | 23.11.2025 6:52 |