Эти часы были сделаны при использовании объекта Date. Они отображают текущее локальное время, которое установлено у пользователя на компьютере.
Что бы узнать, как были собраны часы, скачайте этот файл-пример – http://www.helpexe.ru/effects/effect_6/clock.zip - откройте его во Flash и следуйте указаниям этой статьи. Конечно, вы можете создать свои собственные оригинальные часы, отличающиеся от нашего примера.
Что бы самым лучшим образом усвоить материал этой статьи, вы должны знать основные принципы создания муви клипов и применения программного кода во Flash.
Об объекте Date
Объект Date позволяет вам работать со значениями даты и времени, такие как года, месяцы, дни, часы, минуты, секунды и миллисекунды.
Используя объект, Dateвы можете получать значения даты и времени по Гринвичу, или же значения компьютера, на котором в данный момент запущены часы.
Об объектах
В языке ActionScript объекты позволяют вам получать доступ к некоторому типу информации. Например, объект Date позволяет вам получать информацию о дате и времени из системных часов.
Другие объекты включают Цвет, Звук и XML-объекты. Что бы увидеть полный список объектов, запустите Flash и откройте панель Действий (Actions), выбрав Window->Actions. Кликните по категории Objects, что бы развернуть её.
О методах
Те определённые задания, которые могут выполнять объекты, называются методами. Каждый объект имеет свой собственный набор методов. Например, у объекта Dateесть методgetHours, который получает текущее локальное время. У объекта Date имеется более 30 методов.
Создание часов
Мы сделали за вас некоторые шаги, которые в данной статье не важны. Мы сфотографировали часы и удалили стрелки с циферблата при помощи программы Macromedia Fireworks. Затем мы импортировали изображение в программу Flash как BMP-файл и добавили зелёный фон.
Используя инструменты рисования, мы нарисовали часовую, минутную и секундную стрелки, все указывающие на 12. Что бы создать эффект падающих теней от часовой и минутной стрелок, мы продублировали эти стрелки и разместили дубликаты чуть правее оригиналов. Теперь у нас есть все пять стрелок.
Каждую стрелку мы конвертировали в муви клип. Что бы увидеть эти клипы, откройте Библиотеку, выбрав Window->Library.
Как только стрелки были конвертированы в муви клипы, мы установили прозрачность клипов-теней - Hour Hand Shadow и Minute Hand Shadow – 32% и 27% соответственно.
Затем мы разместили каждый муви клип на своём слое.
Всем пяти образцам стрелок на сцене мы присвоили объектные имена. Вот эти имена: Hourhand, Hourhandshadow, Minutehand, MinutehandshadowиSecondhand.
Привязка кода
После того, как всем образцам были даны объектные имена, мы создали слой Action на главной Временной Линии Кадров (Timeline). Мы назначили этот программный код первому кадру:
fscommand ("allowscale", "false") - эта команда сообщает Flash-плееру, что этот клип - не масштабируемый. Мы не хотим масштабировать окно клипа, так как клип содержит растровое
изображение, которое может быть искажено.
myDate = new Date() - Здесь создаётся экземпляр объекта Date, который мы назвали myDate. Вы должны создать экземпляр объекта Date перед тем, как использовать его методы. Пустые круглые
скобки указывают на то, что мы не используем никаких дополнительных параметров, доступных для этого объекта.
Эти две строки контролируют вращение часовой стрелки и её тени. Они идентичны, за исключением имён образцов. Hourhand– это имя объекта часовой стрелки. Hourhandshadow– это имя объекта тени часовой стрелки.
Метод getHours возвращает текущее значение часов из системного таймера компьютера пользователя. Подобный ему объект getMinutes возвращает текущее значение минут. Свойство _root определяет главную Временную Линию Кадров (Timeline), а свойство _rotation определяет угол поворота муви клипа в градусах.
Эти строки толкуются так: на главной Временной Линии Кадров (Timeline) повернуть определённый образец на определённое количество градусов; это количество равно текущему количеству часов, умноженному на 30 и сложенное с текущим количеством минут, которое разделено на 2.
Например, текущее время 3:00. Тогда угол вращения в результате вычислений будет равен 90 градусов, в результате чего часовая стрелка и её тень будут указывать на 3 часа.
Например, текущее время 15:30. Тогда угол вращения в результате вычислений будет равен 465 градусов=360+105=полный оборот+105 градусов, в результате чего часовая стрелка и её тень будут между 3 и 4 часами.
Эти две строки контролируют вращение минутной стрелки (Minutehand) и её тени (Minutehandshadow). Эти строки толкуются так: на главной Временной Линии Кадров (Timeline) повернуть определённый образец на определённое количество градусов; это количество равно текущему количеству
минут, умноженному на 6 и сложенное с текущим количеством секунд, которое разделено на 10.
Например, текущее время 3:15:00. Тогда угол вращения в результате вычислений будет равен 90 градусов, в результате чего минутная стрелка и её тень будут указывать на 3 часа.
Эта строка контролирует вращение секундной стрелки (Secondhand). Эта строка толкуются так: на главной Временной Линии Кадров (Timeline) повернуть образец Secondhandна определённое количество градусов; это количество равно текущему количеству секунд, умноженному на 6.
Например, текущее время 3:15:30. Тогда угол вращения в результате вычислений будет равен 180 градусов, в результате чего секундная стрелка будет указывать на 6 часов.
В кадр №2 мы вставили команду gotoAndPlay(1), что бы организовать цикл. Это действие каждый раз перемещает проигрывающую головку на первый кадр.
ПО ВСЕМ ВОПРОСАМ, связанным с Flash, обращайтесь ко мне: