Форум: "Базы";
Текущий архив: 2007.02.18;
Скачать: [xml.tar.bz2];
ВнизDBGrid. Запомнить позицию. Найти похожие ветки
← →
Kvinta (2006-11-27 08:34) [0]Есть широкий грид, отображает данные из адо. таблица широкая и длинная, при перемещении по гриду в какой либо момент мы обновляем данные (сортируем например). соответственно, хочется чтобы курсор оставался на прежней записи, и в прежнем столбце (В идеале, никаких движений в гриде не происходит, только содержание ячеек меняется). что-то сам сообразить не могу. как это сделать?
Заранее спасибо.
← →
Sergey13 © (2006-11-27 08:49) [1]Locate
← →
ЮЮ © (2006-11-27 09:02) [2]для колонки: запомнить LeftTop грида и SelectedIndex дбгрида и затем их восстановить.
для строки: сделать так чтобы текущая запись после переоткрытия нд оставалась в таком же положении относительно первой показываемой записи.
для строки. 3 недели назад (09.11) я показывал как сделать нужную запись первой на экране. Здесь задача подобная, только делать её надо не первой о той, которой она была до переоткрытия.
← →
ЮЮ © (2006-11-27 09:05) [3]Sergey13 © (27.11.06 08:49) [1]
Locate
Проблема не м том чтобы найти запись, а чтобы после переоткрытия текущая строка и выбранный столбец остались прежними, хотя искомая запись и изменила сое место в датасете
← →
Sergey13 © (2006-11-27 09:19) [4]> [3] ЮЮ © (27.11.06 09:05)
Это "в идеале" у автора. Я предложил простое, эффективное, но не идеальное (с т.з. автора) решение. 8-)
← →
Kvinta (2006-11-27 12:20) [5]
> Locate
Это только для вертикального перемещения сработает. А для горизонтального?
← →
Kvinta (2006-11-27 12:27) [6]
> для колонки: запомнить LeftTop грида и SelectedIndex дбгрида
> и затем их восстановить.
??? Left,Top у меня при перемещению по гриду всегда 0 (отслеживал через события. Чего там запоминать? Может я опять недогоняю. Мне бы мини пример... Если не сложно..
>
> для строки: сделать так чтобы текущая запись после переоткрытия
> нд оставалась в таком же положении относительно первой показываемой
> записи.
>
> для строки. 3 недели назад (09.11) я показывал как сделать
> нужную запись первой на экране. Здесь задача подобная, только
> делать её надо не первой о той, которой она была до переоткрытия.
>
Простите. Можно небольшой пример.... Буквально сами методы с привязкой к гриду или адо. дальше я постараюсь рразобраться...
← →
sniknik © (2006-11-27 12:57) [7]ничего не нужно делать вообще, все и так остается на своих местах DisableControls - действия над данными - локейт на запомненную перед действиями запись - EnableControls
т.е. так как правильно (и как в книгах/хелпе пишут) и ничего в настройках грида восстанавливать не придется.
если приходится... т.к. чтото сбивается, то приводи код, у тебя ошибка в 17й строке.
← →
Kvinta (2006-11-27 13:06) [8]
> ничего не нужно делать вообще, все и так остается на своих
> местах DisableControls - действия над данными - локейт на
> запомненную перед действиями запись - EnableControls
> т.е. так как правильно (и как в книгах/хелпе пишут) и ничего
> в настройках грида восстанавливать не придется.
> если приходится... т.к. чтото сбивается, то приводи код,
> у тебя ошибка в 17й строке.
Действительно! Все просто! Огромное спасибо! Именно то что я и хотел. :)
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2007.02.18;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.053 c