Страница 1 из 1

Позиционирование курсора в броузере

Добавлено: 07 дек 2004, 16:22
savov
Здравствуйте всем!
Может и было здесь, но не могу найти.
Задачка в общем простая. Есть интерфейс, стали на некоторую запись, оттуда вызвали другой, при возвращении хотелось бы попасть именно туда где стояли. Как это сделать попроще? Есть ли какие функции?

Re: Позиционирование курсора в броузере

Добавлено: 07 дек 2004, 17:09
ecasoft
Обычно чтобы не терялась позиция курсора любые вызовы обрамляют функциями сохраненения в стеке:

PushPos(tnTable);
.... функциии по таблице Table...

PopPos(tnTable);

Re: Позиционирование курсора в броузере

Добавлено: 08 дек 2004, 10:27
savov
Не получилось! Может из-за того, что таблица в памяти и перерисовывается?

Re: Позиционирование курсора в броузере

Добавлено: 08 дек 2004, 11:50
edward_K
ну тогда нужно запомнить какое либо условие
потом найти по этому условию запись в вашей табле и сделать rescanpanel(#ваша табла)
(если она у вас прописана главной в вашем броусе)

Re: Позиционирование курсора в броузере

Добавлено: 08 дек 2004, 12:47
ecasoft
Я с таблицами в памяти как-то не работаю, поэтому не знаю почему не получается. Получается что с таблицами с памятью другая идеология работы?

Еще можно запомнить в переменной первичный ключ уникальный записи и после операции стать на нее командой:

PrimKeyValue := Table.PrimKey;// любое уникальное индексное поле
...операции...
GetFirst tnTable where (( PrimKeyValue ==
Table.PrimKey )) = tsOk {};

Перерисовывать ничего не надо. Если в вашем алгоритме нет операторов перерисовки, то ничего на экране не испортится.

Re: Позиционирование курсора в броузере

Добавлено: 09 дек 2004, 15:12
savov
Благодарю за подсказку! Все заработало именно по этому варианту, но перерисовывать все же приходится после GetFirst.... делаю RescanPanel, тогда все ок.