![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
TDbLookupComboBox - видна только одна запись??? [D7, IB6.x]
AndrewVolkov © (2002-11-12 18:52:00)Использовал компоненты RX 2.75 RXDbLookupCombo, теперь попробовал перейти на стандартный делфовский компонент DbLookupComboBox. Все как бы нормально, только при его открытии я вижу только одну строку(запись). В углу открытого списка (одна строка) появляются кнопки скролинга. Реально я могу посмотреть все записи, но для этого нужно использовать эти кнопки. Если я прокручу до конца, то при последующем открытии я увижу нормальный выпадающий список без скрола. В чем трабла???
Подскажите, если кто знает, намучился уже...
AndrewVolkov (2002-11-13 15:28:00) [1]Сенкс.
Andriano (2002-11-13 08:33:00) [2]Да.
Такого прикола про DbLookupComboBox и не слышал.
Его не использовал. Сразу взял EhLib 2.5. Там свой LookupCombo, кот. может работать и как boxlist, и как box, выводить в dropdown хоть всю таблицу и т.д. Конечно он больше весит.
kaif (2002-11-13 03:27:00) [3]Да, есть такая фишка. Поэтому я и использую RXControls-овский вариант.
Фишка происходит от того, что TDBLookupComboBox не делает fetch 7 записей, хотя и указываешь DropDownRows = 7.
Выход: в событие AfterOpen Lookup DataSet-а впиши что-то вроде:
for i := 1 to 7 do
if not DataSet.Eof then
DataSet.Next;
Тогда произойдет 7 операций fetch и все будет нормально.
Для экономии этот обработчик можно сделать общим для всех DataSet-ов, не отображающихся в каких-либо DBGrid-ах и служащих толко как lookup-справочники.
Те же DataSet-ы, которые отображаются в DBGrid или, как тут говорилось, в DBListBox-ах в таком обработчике не нуждаются, так как эти визуальные компоненты делают нужные fetch.
Нельзя сказать, что это красивое решение, но до тех пор, пока не будет исправлена ошибка в TDBLookupComboBox это решение работающее.
angelcom (2002-11-13 02:30:00) [4]Поясни нормально, как ты задаешь параметры для DbLookupComboBox
Jeer (2002-11-12 19:44:00) [5]Это совсем разные вещи.
В свое время мне пришлось, чтобы не тащить RX, переписать функциональность по аналогу.
AndrewVolkov (2002-11-12 19:09:00) [6]Добавлю, что если поместить на форму компонент DBLookupListBox то получается что в нем соответственно все поля видны и тогда список открывается как надо, без всяких скролов