![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как запретить перерисовку DBGrid'а?
TrainerOfDolphins © (2006-02-13 14:28:00)Здраствуйте!
В процессе работы моей программе необходимо переместиться на другую запись таблицы, а потом вернуться обратно. Эти манипуляции отражаются в DBGrid'е, который подключён к данной таблице - мигает указатель записи.
Вопрос: Как запретить перерисовку DBGrid'а на время внутрипрограммных перемещений по таблице?
Заранее благодарен за ответ.
TrainerOfDolphins (2006-02-14 11:06:00) [1]Спасибо вам всем!
В принципе вопрос изчерпан. Да и собственно всё это не так важно, по сравнению с тем, для чего это всё нужно... Открываю новую тему :).
TrainerOfDolphins (2006-02-14 11:00:00) [2]
> А зачем тебе столько в гриде?
Хороший вопрос :). А хороший вопрос - половина ответа. Спасибо! Есть над чем подумать...:)
Sergey13 (2006-02-14 10:41:00) [3]2[9] TrainerOfDolphins © (14.02.06 10:23)
> А ничего, что у меня в этом датасете 18000 записей?
А зачем тебе столько в гриде?
Жуков Олег (2006-02-14 10:34:00) [4]>А ничего, что у меня в этом датасете 18000 записей?
>Как то не хочится все их дублировать...
Нет, все не надо, а только те, которые нужно. Из задачи видно, что нужна одна запись.
TrainerOfDolphins (2006-02-14 10:23:00) [5]
> Опыт показывает, что датасет для выборки должен быть отдельно
> от датасета для отображения.
А ничего, что у меня в этом датасете 18000 записей? Как то не хочится все их дублировать...
mr.il (2006-02-13 16:11:00) [6]Скажи, что-за манипуляции ты производишь с датасетом, что потребовалось скакать на запись назад. А если будет другой индекс, то результат будет другой. Опыт показывает, что датасет для выборки должен быть отдельно от датасета для отображения.
Johnmen (2006-02-13 15:17:00) [7]
> TrainerOfDolphins © (13.02.06 14:53) [2]
> ...Но ведь DBGrid всё равно мелькает, хоть и немножко меньше.
Враньё.
:)
antoxa2005 (2006-02-13 14:57:00) [8]Создай динамически ADOQuery и бегай по нему сколько хочешь.
SELECT * FROM [таблица подцепленная к твоему BDGrid-у]
TrainerOfDolphins (2006-02-13 14:56:00) [9]Есть ещё какой-то способ?
Vlad (2006-02-13 14:55:00) [10]
> TrainerOfDolphins © (13.02.06 14:53) [2]
Странно, мелькать не должен.
Есть более верный способ - отключить DataSource от грида на время скроллинга, потом снова подключить
mr.il (2006-02-13 14:55:00) [11]IMHO нужно создать еще один датасет и в нем производить манипуляции, а датасет грида оставить в покое. Есть вероятность, что в момент выполнения "скачков" юсер ткнет в другое место грида, и что ты получишЬ?
TrainerOfDolphins (2006-02-13 14:53:00) [12]Мне, к счастью, известны эти методы. Но ведь DBGrid всё равно мелькает, хоть и немножко меньше. Есть методы BeginUpDate и EndUpDate, но они, насколько я понял, внутренние, и я их не могу вызвать.
Johnmen (2006-02-13 14:29:00) [13]DisableControls - EnableControls