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

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

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 то получается что в нем соответственно все поля видны и тогда список открывается как надо, без всяких скролов


Наверх

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