Как импортировать реальную время и дату в мувик? Подозреваю что они берутся из Винды)) но как?
Как импортировать реальную время и дату в мувик? Подозреваю что они берутся из Винды)) но как?
Да, из винды. Смотри класс 'Date' - там куча всевозможных методов
Cloo млин, а мож пример есть или урок? чтобы копи пастом сделать а то на меня блин воздрузили этот флеш долбаный.
Итак, в этом уроке мы научимся создавать уже ставшие культовыми часы. Первыми начнём делать электронные часы. Для этого нам необходимо:
Создать два кадра - один ключевой, другой - дополнительный. Затем надо создать 4 текстовых поля с названиями /:time (здесь будут отображаться часы и минуты), /:clocksecs (для отображения секунд), /:datedisplay (для отображения даты) и поле с названием /:indicator - здесь будет описано состояние часов - день или вечер (AM - After morning, PM - Past Morning).
Разместите всё это, как Вам угодно. Теперь выделите все поля и конвертируёте их в MC (Ролик) - нажатием ‹F8› (это делается для того, чтобы удобнее было редактировать поля, и они компактно размещались в одном МС).
Теперь приступим к части ActionScript. Создаём новый слой с двумя ключевыми кадрами. В первом кадре пишем такой скрипт:
mySecs = new Date();// новое значение метода Дата - секунды
secs = mySecs.getSeconds();// добавлЯем секунды
myMins = new Date();// новое значение метода Дата - минуты
mins = myMins.getMinutes();// добавлЯем минуты
myHrs = new Date();// новое значение метода Дата - часы
hrs = myHrs.getHours();// добавлЯем часы
myYr = new Date();// новое значение метода Дата - год
yr = myYr.getFullYear();// добавлЯем год
myMon = new Date();// новое значение метода Дата - месЯц
mon = (myMon.getMonth())+1;// добавлЯем месЯц
myDate = new Date();// новое значение метода Дата - число
day = myDate.getDate();// добавлЯем число
Разберёмся в скрипте. Объект Date позволяет получить дату и время по Гринвичу (глобальные) и текущие (системные), где запущен Flash Player. Далее, метод newDate назначает новые значения объекта Date. Методы getSeconds(), getMinutes(), getHours(), getFullYear(), getMonth() и getDate() - возвращают секунды, минуты, часы, год, месяц и день месяца указанного объекта Date согласно системному времени.
Теперь во втором кадре добавим такой скрипт:
seconds = int(mytime/1000);
minutes = int((secs+seconds)/60);
hours = int((minutes+mins)/60);
clocksecs = seconds+secs;
clockmins = minutes+mins;
clockhours = hours+hrs;
if (clockhours>12) {
clockhours = clockhours-12;
indicator = "PM";
} else {
(indicator="AM");
}
if (clocksecs<10) {
clocksecs = "0"+clocksecs;
}
if (clockmins<10) {
clockmins = "0"+clockmins;
}
time = clockhours+":"+clockmins;
datedisplay = day+"/"+mon+"/"+yr;
Здесь мы приводим в действие механизм часов и запускаем в ход действия, заданные в первом кадре. Думаю, всё предельно понятно, посмотрите на мой оформленный пример:
Теперь сделаем механические часы - со стрелками. Что для этого надо:
Создать три кадра - один ключевой, другой - дополнительный. А вот теперь уже создаём не текстовые поля, а стрелки (минутная, секундная и часовая). Часовая будет самая короткая, минутная - подлиннее, а секундная - самая большая (см.пример снизу). Итак, обзовём эти стрелки так: секундная - second_hand, минутная - minute_hand и часовая - hour_hand. Кроме того, под нашими стрелками будет тень. Экземпляры теней стрелок: секундная - second_shadow, минутная - minute_shadow и часовая - hour_shadow, причём середина стрелок должна находится на конце линий. Сместите линию так, чтобы её конец был в центре МС.
Теперь разместим эти символы точно по середини круга - циферблата. Они должны быть расположены так, чтобы их середина был на одном уровне. Думаю, создать деления и нарисовать цифры к циферблату не составит труда.
Переходим к скрипту. Первый кадр - вводим значения:
mySecs = new Date();
secs = mySecs.getSeconds();
myMins = new Date();
mins = myMins.getMinutes();
myHrs = new Date();
hrs = myHrs.getHours();
Второй кадр - главный - здесь мы задаём действия, которые следует выполнить стрелкам:
mytime = getTimer();
seconds = mytime / 1000;
minutes = (secs + seconds) / 60;
hours = (minutes + mins) / 60;
clocksecs = seconds + secs;
clockmins = minutes + mins;
clockhours = hours + hrs;
// действиЯ, поворачивающие стрелки
setProperty ("second_hand", _rotation, ((clocksecs/60)*360));
setProperty ("second_shadow", _rotation, ((clocksecs/60)*360));
setProperty ("minute_hand", _rotation, ((clockmins/60)*360));
setProperty ("minute_shadow", _rotation, ((clockmins/60)*360));
setProperty ("hour_hand", _rotation, ((clockhours/12)*360));
setProperty ("hour_shadow", _rotation, ((clockhours/12)*360));
А в третьем кадре мы пишем gotoAndPlay (2);, чтобы каждый раз возвращатся на 2 кадр и выполнять скрипт.
===========================
типа пример )))
ps если те с датой нада типа мес.,число, год, то есть типа такая там "гетМанс" и т.д. ))
А как сделать такой счётчик?
Задача в следующем -- счётчик считает время, которое прошло начиная с некоторого времени. Напр.: счётчик установлен на 29 ноября, сегодня -- 9 декабря. Значение показывает в секундах, тоесть: 11 дней. 11 часов. 27 минут. xx секунд. А?
Да просто вычитай постоянную составляющую, на которую установлен начальный счетчик, и всё..