Просмотр полной версии : Задание новых параметров для таймера
Tetraeon
24.09.2012, 20:46
Приветствую, подскажите пожалуйста как задать новые параметры для таймера кроме как еще раз запустить слушатель для этого таймера (побочный эффект срабатывание сразу нескольких экземпляров этого таймера)
this.udarTime = Math.round(30 - udarBonus * 2);
udarTimer = new Timer(udarTime,100);
udarTimer.addEventListener(TimerEvent.TIMER, udar);
udarTimer.start();
tsarapkabel
24.09.2012, 21:05
Чтобы избежать "побочного эффекта", сбрасываем таймер и удаляем слушатель перед добавлением и запуском нового таймера:
if (udarTimer.running) {
udarTimer.reset();
udarTimer.removeEventListener(TimerEvent.TIMER, udar);
}
caseyryan
24.09.2012, 22:01
Слушатель-то зачем удалять?
timer.reset(); // останавливает и сбрасывает таймер на значения по умолчанию
timer.delay = newTime; // задает новое время задержки
timer.start();
Tetraeon
24.09.2012, 23:33
Класс спасибо большое )
Слушатель-то зачем удалять? Обычный destroy - обязателен в случае очищения от грехов)
caseyryan
25.09.2012, 15:10
а кто говорит о каких грехах? )
В данном случае слушатель удалять не обязательно. Таймер остается тот же, зачем по десять раз перевешивать на него слушатель?
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.