Страница 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, тогда все ок.