Русские документы
Ежедневные компьютерные новости RSS rusdoc.ru  Найти :
http://www.rusdoc.ru. Версия для печати.

Цифровые часы на флэш

Раздел: Software / Flash @ 13.11.2007 | Ключевые слова: часы flash

Автор: Steve
Источник: Hitechworld.ru

Ну... Это еще не аналоговые часы чисто программным кодом ActionScript... Это цифровые часы, практически программные... Идею подсказал Klimon. Меня она заинтересовала и через полчаса родились такие вот часы... Тоже довольно интересная штука в дизайне.

Ну что же... сам процесс создания до боли прост.... При помощи инструмента Text Tool создаем 7 текстовых полей. Делаем 5 из них динамическими и присваиваем значения в поле Instance Name соответственно "hours_txt", "minutes_txt", "seconds_txt", "nedelya_txt", data_txt.  Остальные два просто оставляем статическими пишем в них двоеточия. Затем расставляем все в удобном для нас виде и подгоняем размеры... Да и чуть не забыл свойство Selectable отключите... Ну тобы было не выделить цифирки и буковки.

Ну а теперь самое вкусное - берем вот этот код и вставляем его в новом слое в первом кадре....

//function

//Вывод в поля текста
function time():Void {

    //Объявляем переменные... Для ActionScript это не обязательно, но правила хорошего тона требуют

    var date:Date = new Date();

   //Объявляем массив переменных для дней недели и месяцев

    var arr:Array = ["Воскресенье", "Понедельник","Вторник", "Среда", "Четверг", "Пятница", "Суббота"];
    var month:Array = ["Янв", "Февр", "Март", "Апр", "Май", "Июнь", "Июль", "Авг", "Сент", "Окт", "Ноя", "Дек"];

   //Определяем значение даты, часов, минут, секунд и для красоты отображения, если значение меньше 10 добавляю впереди 0

   //Заодно сразу присваиваю соответствующим полям нужные значения.

    if (date.getHours()()<10) {
        hours_txt.text = `0`+date.getHours();
    } else {
        hours_txt.text = date.getHours();
    }
    if (date.getMinutes()<10) {
        minutes_txt.text = `0`+date.getMinutes();
    } else {
        minutes_txt.text = date.getMinutes();
    }
    if (date.getSeconds()<10) {
        seconds_txt.text = `0`+date.getSeconds();
    } else {
        seconds_txt.text = date.getSeconds();
    }
    if (date.getDate()<10) {
        data_txt.text = `0`+date.getDate()+`.`+month[date.getMonth()]+`.`+date.getFullYear();
    } else {
        data_txt.text = date.getDate()+`.`+date.getMonth()+`.`+date.getFullYear();
    }
    nedelya_txt.text = arr[date.getDay()]+`,`;
}
//Задаем интервал для работы этой функции
setInterval(this,"time",1000);

/*Вызываем эту функцию, можно и без вызова... Просто так пройдет
некоторый период времени прежде, чем она сработает*/
time();

Результат:


Вот в принципе и все... Цифровые часы готовы... Кстати такие же часы вы можете увидеть у нас на форуме=)

PS: Спасибо Klimon за идею создания данных часов и написания статьи...  



Вернуться в раздел: Software / Flash
© Copyright 1998-2012 Александр Томов. All rights reserved.