| 
| 
 | Вопрос # 2 335/ вопрос открыт / | 
 |  Приветствую, уважаемые эксперты!Добрый день! Работаю с DBgridEh, связанным с таблицей dbase (Table + DataSourse). Есть такая проблема. На свойстве ячейки таблицы "OnChange" начинается подсчет разных сумм. В ходе подсчета происходит передвижение по строкам таблицы. После этого всего необходимо вернуться на ту строку, которая менялась. Использую bookmark:
 
 bm:= TabOd.GetBookmark;
 ....
 TabOd.GotoBookmark(bm);
 TabOd.FreeBookmark(bm);
 
 все проходит правильно - но! таблица прокручивается вниз так, что курсор оказывается где-то в середине экрана. хотя до изменения ячейки курсор по отношению к экрану был внизу, первая запись - видна, место позволяет! Нет ли какого-то свойства у таблиц, которое могло бы решить проблему? Хотелось бы, чтобы прокрутка таблицы происходила обыкновенно, а не такими вот рывками.
 
|  |   Вопрос задала: sensy (статус: Посетитель)Вопрос отправлен: 22 января 2009, 11:26
 Состояние вопроса: открыт, ответов: 0.
 |  
 Мини-форум вопросаВсего сообщений: 2; последнее сообщение — 22 января 2009, 15:04; участников в обсуждении: 2. 
|   | Вадим К (статус: Академик), 22 января 2009, 14:00 [#1]:А вы при подсчете не занимайтесь неправильными методами подсчёта и считайте так как положено. Создайте себе Query, запишите туда сиквел запрос и считайте. Либо поставте ещё один TTable, свяжите с нужной таблицей и считайте через него. А то используете тот же TTable и имеете, что имеете.
 Галочка "подтверждения прочтения" - вселенское зло. |  
|   | sensy (статус: Посетитель), 22 января 2009, 15:04 [#2]:.. спасибо за внимание. как оказалось, вопрос решаем, немножко в обход конечно, но: ....
 TabOd.GotoBookmark(bm);
 TabOd.FreeBookmark(bm);
 
 id:= TabOd.RecNo;
 TabOd.First;
 TabOd.MoveBy(id - 1);
 
 TabOd.EnableControls;
 
 вернулась к закладке, запомнила номер записи, перешла на первую запись - и обратно. и никаких скачков...
 P.S.  а если "правильный" метод оказывается более громоздким? так гораздо проще.. (в конкретном случае)
 |  Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте. |