Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 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
2-1170240363
<X>
2007-01-31 13:46
2007.02.18
Ошибка при созданнии файла


1-1167224714
sutyt
2006-12-27 16:05
2007.02.18
Как из библиотеки передать списки (TList)?


15-1169733670
vasIzmax
2007-01-25 17:01
2007.02.18
Тест по ТАСО


2-1170413046
Extar
2007-02-02 13:44
2007.02.18
Чем лучше соорудить инсталлятор для своей программы?


15-1169702424
BorisUK
2007-01-25 08:20
2007.02.18
PL SQL задачки, упражнения, у кого есть?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский