Відразу ж зауважу, що таймер. про який піде мова в цьому уроці, буде створено за допомогою класу Timer. Про цей клас і його застосування я вже писав в пості «Клас Timer в ActionScript 3.0». Тому зайвий раз повторюватися не буду і зосереджуся на суті уроку.
Спершу треба зробити пару заготовок, а саме:
- динамічне текстове поле на ім'я timerTF, в якому буде виводиться час;
- кнопка на ім'я btn, яка буде запускати / зупиняти роботу таймера.
Після цього можна переходити до коду.
Код ActionScript 3.0:
/ * Імпорт класів * / import flash.utils.Timer; import flash.events.TimerEvent; / * Змінна, яка зберігає точку відліку (в мілісекундах) * / var beginTime: uint; / * Створюємо таймер * / var timer: Timer = new Timer (100); timer.addEventListener (TimerEvent.TIMER, onTimer); / * Функція, яку із заданою періодичністю викликає раніше створений таймер * / function onTimer (event: TimerEvent): void
В принципі, таймер готовий. Але тільки відлік часу він веде в мілісекундах, а це не дуже зручно. Давайте відформатуємо виведене таймером час під популярний формат hh: mm: ss. Для цього додамо в наш код спеціальну функцію msFormat ().
Код ActionScript 3.0:
/ * Імпорт класів * / import flash.utils.Timer; import flash.events.TimerEvent; / * Змінна, яка зберігає точку відліку (в мілісекундах) * / var beginTime: uint; / * Первісна напис в текстовому полі * / timerTF.text = "00:00:00"; / * Створюємо таймер * / var timer: Timer = new Timer (100); timer.addEventListener (TimerEvent.TIMER, onTimer); / * Функція, яку із заданою періодичністю викликає раніше створений таймер * / function onTimer (event: TimerEvent): void /timerTF.text = (new Date().getTime() - beginTime).toString(); timerTF.text = msFormat(new Date().getTime() - beginTime);> / * Клік по кнопці btn запускає функцію onClick * / btn.addEventListener (MouseEvent.CLICK, onClick); function onClick (event: MouseEvent): void Завантажити исходник до даного посту можна тута - скачати исходник (під Adobe Flash CS 5).Схожі статті