Помогите найти решение для bBrowser-а

  Вход на форум   логин       пароль   Забыли пароль? Регистрация
On-line:  

Раздел: 
Программирование на CAVO / / Помогите найти решение для bBrowser-а

Страницы: 1  новая тема

Автор Сообщение

Группа: Модераторы
Сообщений: 177
Добавлено: 07-09-2009 15:30
Задача такая: в броузере есть два рассчитываемых поля. Надо сделать так, чтобы значения показывались (и автоматически пересчитывались) только для текущей записи. Т.е., как только переходим к какой-то записи - данные в прежней записи исчезали, а в новой - появлялись. Кто-то что-то может подсказать ?

Группа: Участники
Сообщений: 8
Добавлено: 08-09-2009 12:36
Попробуй метод CellSelect

Группа: Модераторы
Сообщений: 177
Добавлено: 08-09-2009 16:54
CellSelect и RowSelect срабатывают уже после смены позиции. Поэтому, там данные только
о новой записе, строке, ячейке...
Вопрос, как и где лучше перехватить событие смены позиции ? Пока алгоритм вижу такой: при программной смене или выборке новой строки в броузере мышкой надо убрать текст в прежней ячейке, а после смены - вызвать расчёт для новой... Для перерисовки использовать RedDraw. Может, у кого есть более изящное решение?

Группа: Модераторы
Сообщений: 177
Добавлено: 10-09-2009 17:44
Всем спасибо ! У меня не получилось отслеживать переход со строчки на строчку. Поэтому решил оставить прежний алгоритм... С клиентом упростил задачу и вместо 2-ух рассчитываемых полей стало одно. Количество вызовов расчёта уменьшилось вдвое и стало 147. Потом оптимизировал обновление данных, включил использование Suspend-а. Количество уменьшилось до 37-и. А потом оптимизировал сам модуль рассчёта с целью обработки данных только видимых позиций. Используя метод GetVisiblePosFromRecNo() уменьшил число обрабатываемых строк. И таким образом осталось 25. Правда выполз подвох bBrowser-а: я использовал данные auRecord, а при смещении записи - его данные меняются, а значит, его приходится рассчитывать самому... Я пока отказался от этой идеи. Может, кто другой одолеет эту проблему...

Ускорение существенное. Так что - всё в наших руках: правильная постановка задачи и "ровные" руки. Удачи!

Страницы: 1  новая тема
Раздел: 
Программирование на CAVO / / Помогите найти решение для bBrowser-а

Отвечать на темы могут только зарегистрированные пользователи

KXK.RU