Базы данныхИнтернетКомпьютерыОперационные системыПрограммированиеСетиСвязьРазное
Поиск по сайту:
Подпишись на рассылку:

Назад в раздел

Делаем таймер!

div.main {margin-left: 20pt; margin-right: 20pt}

Делаем таймер!

Вэтом уроке будет рассказано о том, как сделать таймер,похожий на пример!
I.Сначала создадим новый фильм и три кадра в нём(для регулирования таймера в 1ом кадре поставьте Action:
stop();, а в 3ем Action: gotoAndPlay(2); для постоянного обновления данных).
II.Затем создадим две кнопки,которые включали бы в себя знаки + и -.
III.Создадим два динамических текстовых полей с именем second и с именем time.
IV.Поместим эти кнопки на главную сцену и дадим им такие Actions:
1)Для той, что с +:
on(press)
{if(sec<9999)
{sec++;
second=sec;}}
2)для той,что с -:
on(press)
{if(sec>1)
{sec--;
seconds=sec;}}
Пояснения:
on(press) --- показывает при каком событии нужно выполнять последующие действия ( в
данном случе при нажатии на кнопку)
{if(sec<9999) --- накладываем ограничения на значение переменной ( т.е. пока
переменная "sec" < 9999 то мы переходим к дальнейшим действиям)
{sec++; --- увеличивает переменную "sec" на 1 (sec=sec+1;)( то же самое происходит при sec--;
только она уменьшается на 1)
seconds=sec;}} --- эта строка отображает значение переменной в динамическом текстовом поле
с именем: second.
V.Создадим кнопку старт, поместим ее на главную сцену и дадим ей Script:
on(press)
{startTime=getTimer();
time1=sec*1000;
gotoAndPlay(2);}
Пояснения:
on(press) --- смотрите выше ^
startTime=getTimer(); --- фиксируем время нажатия на кнопку и заносим его, как значение переменной "startTime"
time1=sec*1000; --- переводим секунды,(значение переменной, которое мы уменьшали/прибавляли) в милисекунды
(таймер работает только с милисекундами)
gotoAndPlay(2);} --- переходим во второй кадр
VI.Переходим на работу во втором кадре.!!!Убираем все Actions со всех объектов!!!Наносим такой Action на второй кадр:
if(getTimer()-startTime < time1)
{time=Math.floor((getTimer()-startTime)/1000);}
if(getTimer()-startTime >= time1)
{time="Time Out!";
gotoAndStop(1);}
Пояснения:
if(getTimer()-startTime < time1) --- Смотрим, не прошло ли больше времени, чем задали?
{time=Math.floor((getTimer()-startTime)/1000);} --- Если не прошло, то заполняем текстовое поле time2 целой частью прошедшего
времени, переведённым из милисекунд в секунды.("getTimer()-startTime" --- вычисляем прошедшее время).
if(getTimer()-startTime >= time1) --- Смотрим ещё раз.
{time="Time Out!";
gotoAndStop(1);} --- Если прошло, то в текстовое поле time выводится надпись: Time Out!. Затем мы незаметно попадаем в первый
кадр для повторной настройки таймера.

Вот и всё, если вы выполняли всё, как здесь написано, то у вас получится!
P.S. Попробуйте прилумать таймер для обратного отсчета(как в примере) сами!
Если что-то не получается пишите мне на e-mail, я вышлю вам исходник для сравнения с вашим творением!



Автор: © vol
Источник: http://www.flasher.ru


  • Главная
  • Новости
  • Новинки
  • Скрипты
  • Форум
  • Ссылки
  • О сайте




  • Emanual.ru – это сайт, посвящённый всем значимым событиям в IT-индустрии: новейшие разработки, уникальные методы и горячие новости! Тонны информации, полезной как для обычных пользователей, так и для самых продвинутых программистов! Интересные обсуждения на актуальные темы и огромная аудитория, которая может быть интересна широкому кругу рекламодателей. У нас вы узнаете всё о компьютерах, базах данных, операционных системах, сетях, инфраструктурах, связях и программированию на популярных языках!
     Copyright © 2001-2024
    Реклама на сайте