Форум: "Компоненты";
Текущий архив: 2005.08.21;
Скачать: [xml.tar.bz2];
ВнизГлючит Ttimer в самописном компоненте Найти похожие ветки
← →
Mr.Den © (2004-08-23 10:51) [0]Уважаемые.
Написал давече компонент, который использует внутри себя класс Ttimer для анимации внешнего вида компонента (по тикам он сам себя перерисовывает).
Проблема вот какая:
Если размножить компонент на форме(т.е. сделать более одной копии), то перерисовка происходит, только в случае нечетного количества активированных компонент, если количество четно, то во всех компонентах текущее состояние замирает (не перерисовывается).
Я подумал что проблема в таймере.
Может кто предложит альтернативу Ttimer. Интервал где-то 500 мсек.
И вот еще, Таймеры предполагается использовать и в основной программе интервал 30 мин, может есть альтернатива, подскажите пожалуйста.
Заранее благодарен Mr.Den
← →
Юрий Зотов © (2004-08-23 12:33) [1]> Mr.Den © (23.08.04 10:51)
> перерисовка происходит, только в случае нечетного количества
> активированных компонент, если количество четно, то во всех
> компонентах текущее состояние замирает (не перерисовывается).
> Я подумал что проблема в таймере.
Если проблема "четности" и правда в таймере, то это какая-то очень странная проблема, не правда ли? Тем более, что класс TTimer протестирован сотни тысяч раз еще со времен Delphi 1. И до сих пор работал нормально. У всех.
Так что поневоле напрашивается другое предположение - что проблема все же не в таймере, а в другом коде. Который было бы неплохо видеть, иначе нельзя сказать ничего определенного.
← →
NikeOLD (2004-08-24 16:09) [2]Если у тебя будет по таймеру на компонент, то это чревато. В Win98 количество таймеров ограничено.
Выход: напиши маленький класс, который будет управлять одним единственным таймером и знать обо всех твоих компонентах (у которых могут быть разные интервалы), а там в цикле смотри подошло ли время к обновлению i-компонента.
Страницы: 1 вся ветка
Форум: "Компоненты";
Текущий архив: 2005.08.21;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.033 c