Скроллинг FibPlus DataSet-a
Скроллинг FibPlus DataSet-a
Использую DataSet из палитры компонент FibPlus, данные хранятся в Firebird SQL сервер.
Данные DataSet-a отображаются в DBGrid. Вот какой вопрос: ставлю указатель в середину
сетки DBGrid. Далее - на вертикальной полосе прокрутки DBGrid-a нажимаю кнопку "Вниз"
Почему указатель с текущей записи перемещается сразу вниз DBGrid-a, а не остаётся на
той-же записи, где был поставлен?
С компонентами IBX - та же история. Если же крутить данные не из IB-сервера - а из
локальной СУБД, то такого не происходит..
Кто знает, подскажите, этот эффект всегда при работе DataSet с данными SQL сервера?
Очень неудобно перемещаться по таблице записями - оставляешь указатель на нужной
записи, и как только пользуешься прокруткой, чтобы посмотреть содержимое соседних
записей - указатель слетает...
Данные DataSet-a отображаются в DBGrid. Вот какой вопрос: ставлю указатель в середину
сетки DBGrid. Далее - на вертикальной полосе прокрутки DBGrid-a нажимаю кнопку "Вниз"
Почему указатель с текущей записи перемещается сразу вниз DBGrid-a, а не остаётся на
той-же записи, где был поставлен?
С компонентами IBX - та же история. Если же крутить данные не из IB-сервера - а из
локальной СУБД, то такого не происходит..
Кто знает, подскажите, этот эффект всегда при работе DataSet с данными SQL сервера?
Очень неудобно перемещаться по таблице записями - оставляешь указатель на нужной
записи, и как только пользуешься прокруткой, чтобы посмотреть содержимое соседних
записей - указатель слетает...
Re: Скроллинг FibPlus DataSet-a
Используй grid из библиотеки EhLib.
Это глюк DBGrid, а не компонентов доступа
Это глюк DBGrid, а не компонентов доступа
Re: Скроллинг FibPlus DataSet-a
...А я и использую DBGridEh. Дело не в гриде, я думаю. Я попробовал вставить компоненты для доступа к своей Firebird базе прямо в демонстрационный
пример DBGridEh, временно отключив его от своих локальных таблиц, которые используются в Демо, и подключил к SQL серверу - и сразу начался тот же
самый эффект, скроллинг начал работать очень странно и неудобно. Что делать с этим - не зню...
пример DBGridEh, временно отключив его от своих локальных таблиц, которые используются в Демо, и подключил к SQL серверу - и сразу начался тот же
самый эффект, скроллинг начал работать очень странно и неудобно. Что делать с этим - не зню...
-
- Заслуженный разработчик
- Сообщения: 1436
- Зарегистрирован: 15 сен 2005, 09:05
Re: Скроллинг FibPlus DataSet-a
Анализ исходников тебе поможет, благо и для грида и для фибов они доступны.
Re: Скроллинг FibPlus DataSet-a
Возможно... Только это занимает очень много времени. Я думал, может кто-то сталкивался с подобной задачей,Dimitry Sibiryakov писал(а):Анализ исходников тебе поможет, благо и для грида и для фибов они доступны.
поэтому и написал на форум...
-
- Заслуженный разработчик
- Сообщения: 1436
- Зарегистрирован: 15 сен 2005, 09:05
Re: Скроллинг FibPlus DataSet-a
Если хочешь сэкономить время, выкинь связку DataSet+Grid, переходи на TpFIBQuery+TListView.
Re: Скроллинг FibPlus DataSet-a
я должен заметить, что Дмитрий переборщил в ответах, предложив переписывать грид, а на самом делеПочему указатель с текущей записи перемещается сразу вниз DBGrid-a, а не остаётся на
той-же записи, где был поставлен?
ответ в том, что так работает грид с SQL-серверами.
под "локальной СУБД" имеете в виду навигационную dbf и paradox? так там сразу известно сколько записей в таблице. А в sql сервере количество записей, возвращаемых большинством запросов, неизвестно.а из локальной СУБД, то такого не происходит..
Вы еще и о буферизации не в курсе, наверное. Сколько записей в грид выбираете?Очень неудобно перемещаться по таблице записями - оставляешь указатель на нужной
записи, и как только пользуешься прокруткой, чтобы посмотреть содержимое соседних
записей - указатель слетает...
В общем, Вам на форум по Дельфи, или книжку хорошую, читать про особенности работы с sql субд.