Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.08.21;
Скачать: CL | DM;

Вниз

Глючит 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;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.047 c
3-1121080660
Dyakon_Frost
2005-07-11 15:17
2005.08.21
Ошибка при выводе информации в DBGrid!


1-1122971216
webpauk
2005-08-02 12:26
2005.08.21
Handle формы


3-1121328168
Ирина
2005-07-14 12:02
2005.08.21
Перенос полей


4-1118906834
leonidus
2005-06-16 11:27
2005.08.21
Как получить слово выделенное в другом приложении


1-1122640151
mazepa
2005-07-29 16:29
2005.08.21
io error 53