Этот пост посвящён небольшому классу Calendar, который, как очевидно даже из названия, генерирует такой широко распространённый флеш-виджет, как календарь. Календарик получается, правда, довольно простенький, но всё же выглядит он весьма стильно.
Не буду изматывать вас длительными рассуждениями, а сразу же покажу, как использовать класс Calendar в ваших флеш-проектах. Сам класс прилагается к исходнику, ссылка на который, как обычно, в конце поста. Итак, код...
Код ActionScript 3.0:
/*
подключаем класс Calendar
*/
import Calendar;
/*
создаём экземпляр класса Calendar
*/
var calendar:Calendar = new Calendar();
/*
добавление на сцену
*/
addChild(calendar);
/*
позиционируем календарь на сцене
*/
calendar.x = 200;
calendar.y = 100;
/*
создаём объект Date, из которого будем узнавать текущий год и месяц
*/
var d:Date = new Date();
/*
устанавливаем текущий месяц и год для нашего календаря
*/
calendar.month = d.getMonth();
calendar.year = d.getFullYear();
/*
отрисовка календаря
*/
calendar.Render();
Результат применения данного кода будет следующим:
Естественно, не стоит забывать, что время берётся флеш-роликом с компьютера пользователя, а, следовательно, корректность работы календаря напрямую зависит от корректности настроек времени и даты на компьютере пользователя.
Ещё один недостаток календаря - его формат. Для отечественных пользователей привычнее иметь дело с календарём, в котором неделя начинается с понедельника, а не с воскресенья. Что же до названия дней недели и месяцев, то никто не мешает их вам перевести на русский язык. Что я и сделал, сохранив переведённый класс, как CalendarRu (тоже прилагается к исходнику).
Код ActionScript 3.0:
import CalendarRu;
var calendar:CalendarRu = new CalendarRu();
addChild(calendar);
calendar.x = 200;
calendar.y = 100;
var d:Date = new Date();
calendar.month = d.getMonth();
calendar.year = d.getFullYear();
calendar.Render();
Теперь наш календарик стал гораздо приятнее для русского глаза:
Исходник под Adobe Flash CS5.5 и сам класс Calendar можно скачать по данной ссылке.
???
Была мысль..)))
Спасибо за оперативный ответ , отзывчивосить..и терпение.