![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как правильно обновлять dbgrid? [D7]
sharkOFF © (2004-10-06 17:35:00)После каких-то изменений в базе нужно обновить данные
в гриде. При этом грид, находящийся на какой-либо позиции
должен не соскакивать на начало, а оставаться на текущей позиции.
Можно сохранять ID позиции, а потом использовать Locate в Query, на который завязан грид, но тогда этот элемент позиционируется по центру грида - картинка меняется. Это раздражает пользователей. Может можно как-то сохранять позицию скроллинга, а потом ее восстанавливать, чтобы точно восстанавливать позицию?
Vlad (2004-10-06 17:53:00) [1]
> sharkOFF (06.10.04 17:35)
> После каких-то изменений в базе нужно обновить данные
> в гриде
Если обновлять через стандартный метод Refresh, то изменение позиции курсора не должно происходить вобще.
Ну а если ты делаешь Close; Open, тогда понятно. В этом случае восстановить ту же картинку будет очень гемморойно. Сам когда-то пробовал, но в итоге решил забить. Оно того не стоит.
Defunct (2004-10-06 17:46:00) [2]1. можно потратить месяц и сделать свою реализацию dbgrid.
2. можно запоминать позицию центра grid'a и потом ее же и восстанавливать.