Все выпуски  

Выпуск №13


Macromedia Flash: всё что вы хотите о нём знать
НОВОСТИ, СТАТЬИ, УРОКИ, СОФТ-ОБЗОРЫ, FLASH В ВОПРОСАХ И ОТВЕТАХ
29 Октября 2006 ВЫПУСК 13

Оглавление

» Колонка редактора: MustLive
» Новости из мира flash
» Разработка своего tooltip во Флеше
» Принципы создания динамических меню во Flash (Часть первая)
» Flash в вопросах и ответах
» Post Scriptum

САЙТ РАССЫЛКИ FLASHZONE.RU

Cайт посвящён Macromedia Flash. На Flash Zone в изобилии можно прочитать статьи и уроки по флешу, скачать исходники и программы для работы с flash. Помимо качественного наполнения, на нашем портале Вы можете найти небольшой, но «уютный» flash форум для общения и обмена опытом!

САЙТ АВТОРА MLFUN.ORG.UA

Коллекции приколов: прикольные картинки, Flashки, мультики Joe Cartoon, Flash-игры, Flash-мультфильмы, шоквэйвы, прикольные программы, аудио файлы, музыка, видео и другие прикольные файлы.

САЙТ АВТОРА DANIMULT.RU

Студия находится в Челябинске, появилась на просторах Сети совсем недавно, но последние работы студии уже вызвали бурю положительных откликов среди зрителей... Чего стоит только "Чебурашка и косяк" наделавший море шума в сети.


Колонка редактора: MustLive

Здравствуйте дорогие читатели.

В этом выпуске рассылки мы подготовили для вас много интересной информации.

В номере из новостей вы узнаете о выходе новой версии программы KoolMoves 5.2, о закрытии Adobe уязвимости во флеше, о сделке между Adobe и Verizon Wireless, а также о том, что Adobe выпустила Flash Player 9. Вашему внимание статья: Разработка своего tooltip во Флеше. А в разделе "Flash в вопросах и ответах" я расскажу о том, как сделать весь флеш-баннер кнопкой, а также о том, как сделать так, чтобы во флеш меню выбранное положение кнопки сохранялось после загрузки соответствующей страницы.


Новости из мира flash

KoolMoves 5.2: веб-анимация для сайта
http://3dnews.ru/software-news/koolmoves_5_2_veb_animatsiya_dlya_saita-101443/

Обновилась программа для создания web-анимации, с использованием инструментов для работы с Flash и анимированными *.gif файлами. Программа может применять различные эффекты к тексту, импортировать векторную графику, добавлять аудио в формате *.wav, осуществлять градиентную заливку созданной кривой, присваивать различные действия кнопкам и изображениям. Благодаря тому, что с KoolMoves работать очень просто, даже не имея навыков работы с Flash, вы сможете создавать превосходные ролики, которые могут быть применены в качестве баннеров, при создании мультимедийного слайд-шоу, создании системы навигации по сайту и т. д. В этом релизе более чем в два раза увеличено количество эффектов, исправлены ошибки.

Добавил: MustLive.

Adobe закрывает уязвимость во флеше
http://3dnews.ru/software-news/adobe_zakrivaet_uyazvimost_vo_fleshe-122139/

Компания Adobe выпустила обновление для программы Flash Player. Патч, обновляющий программу до версии 8.0.24.0, исправляет критические уязвимости, найденные в программе. Используя вредоносный SWF-файл, недоброжелатель может дискредитировать систему.

Уязвимость была обнаружена корпорацией Microsoft и касается всех операционных систем. Компания Adobe выпустила обновления для своих программ, которые содержат флеш, в том числе Breeze, Shockwave и Flex. Также были выпущены обновленные версии Flash 7 для Linux и Solaris.

Добавил: MustLive.

Verizon Wireless && Adobe
http://www.cmyk.uz/blogger/?p=165

Компания Adobe заключила сделку с Verizon Wireless, вторым по величине в США провайдером беспроводных услуг. По условиям сделки в мобильные телефоны Verizon будет встраиваться программное обеспечение Flash. Финансовые условия сделки Adobe и дата его вступления в силу пока не разглашаются, сообщает Reuters. По словам представителей Adobe, Verizon станет первым в США оператором беспроводной связи, предлагающим мобильные телефоны со встроенной технологией Flash. Кроме того, эта сделка будет способствовать выходу Adobe на рынок мобильных телефонов.

По мнению аналитиков Pacific Crest, эта сделка - серьёзное достижение для калифорнийской Adobe, поскольку поможет компании заключить аналогичные соглашения и с другими операторами на территории Соединённых Штатах. Также сделка положительно отразится на прибыли Adobe, которая может составить около миллиарда долларов США.

Сделка совершена в рамках стратегии Adobe по продвижению на рынке мобильных устройств технологии Flash. Начало стратегии ознаменовалось покупкой в конце 2005 года компании Macromedia за 2,3 миллиарда долларов США.

Добавил: MustLive.

Adobe выпустила Flash Player 9
http://www.3dnews.ru/software-news/adobe_vipustila_flash_player_9-173912/

Компания Adobe выпустила новую версию программы Adobe Flash Player. Изначально планировалось, что программа выйдет под номером 8.5, однако позже было принято решение выпустить ее как девятую версию. По заявлению разработчиков, Flash Player 9 работает до 10 раз быстрее, благодаря ActionScript 3.0 и новой ActionScript Virtual Machine (AVM), которая включает компилятор Just In Time (JIT), передающий код ActionScript на максимальной скорости. Среди улучшенных возможностей AVM более эффективное использование памяти, более быстрая загрузка приложений, улучшенный отладчик и полная отчетность об ошибках.

Flash Player 9 обеспечивает новые возможности для Adobe Flex 2, новой версии инструмента для разработчиков, который содержит множество инструментов для создания веб-приложений.

Установить Flash Player 9 можно как с сайта Adobe, так и через систему автоматических обновлений. Согласно прогнозам компании NPD Group Research, уже через год новая версия плеера будет установлена на 80 процентах компьютеров, которые подключены к Интернету.

Добавил: MustLive.

Разработка своего tooltip во Флеше

При разработке программного обеспечения на флеше, в том числе игр, а также меню для сайтов или полнофункциональных сайтов на флеше, может понадобиться создать свой tooltip. Когда при наведении курсора на какой-либо объект (например кнопку), возле курсора возникала подсказка - текстовая строка с необходимыми пояснением.

Для разработки подобного функционала во флеше, нужно сделать объект, динамическое текстовое поле (в случае если будет много различных текстовых надписей для разных объектов), или же сделать заранее подготовленную надпись, и помещённую в объект (мувиклип) с заданным именем. Это нужно, чтобы можно было статически или динамически формировать текстовую строку при наведении курсора на объект.

Далее нам нужно будет при наведении мыши показать тултип возле курсора. Допустим наш мувиклип (объект) тултипа называется tooltip. При этом сам объект тултип, стоит разместить в самом верхнем слое, чтобы он появлялся над всеми другими объектами.

В первом кадре флешки спрячем тултип (он будет появляться лишь при наведении на нужный объект):

_root.tooltip._visible = 0;

Сам тултип расположен где-либо на сцене, оптимально сбоку возле границы сцены (он всё равно будет изначально невидим), чтобы не мешал.

Также для тултипа укажем смещение по оси y, чтобы он не налазил на курсор.

Для выбранного объекта (кнопки), задаём следующий код в Actions:

on (rollOver) {
_root.tooltip._visible = 1;
_root.tooltip._x = _root._xmouse;
_root.tooltip._y = _root._ymouse - 20;
}
on (rollOut) {
_root.tooltip._visible = 0;
}

В данном случае показан код для статического тултипа (заранее заданного), если же нужно сделать динамический, чтобы один тултип использовать для разных объектов с разным текстом, то нужно разместить динамическое текстовое поле, которому при наведении задавать соответствующий текст (свой для каждого объекта).

Также можно будет под свою задачу настроить параметры смещения по осям x и y.

Для динамического тултипа, размещаем на сцене динамическое текстовое поле, с именем tooltip. Код для наших кнопок будет следующий.

Для первой:

on (rollOver) {
 _root.tooltip._visible = 1;
 _root.tooltip._x = _root._xmouse - 60;
 _root.tooltip._y = _root._ymouse - 40;
 _root.tooltip.text = "Тултип";
}
on (rollOut) {
 _root.tooltip._visible = 0;
}

Для второй и последующих кнопок аналогично. Лишь параметр _root.tooltip.text свой задавать.

В дальнейшем, когда количество объектов, которым необходимы тултипы, возрастёт, да и изначально, для упорядочивания кода вашей флеш программы, стоит сделать функции, к которым обращаться из объектов.

function ShowTooltip (text) {
 _root.tooltip._visible = 1;
 _root.tooltip._x = _root._xmouse - 60;
 _root.tooltip._y = _root._ymouse - 40;
 _root.tooltip.text = text;
}
function HideTooltip () {
 _root.tooltip._visible = 0;
}

Этот код располагаем в первом кадре сцены.

И далее для всех объектов (кнопок) нужно лишь задать вызовы функций:

on (rollOver) {
 ShowTooltip("Тултип");
}
on (rollOut) {
 HideTooltip();
}

Все свойства шрифта тултипа задаются для надписи tooltip.

Удачных вам тултипов!

Автор: MustLive.

Принципы создания динамических меню во Flash (Часть первая)

До сих пор втречается огромное количество Flash сайтов или просто шапок на сайтах, в которых меню можно обновить только перекомпилировав fla, т.е. нужно иметь исходник, что бы добавить или удалить пункт меню. При всём при этом владельцем сайта далеко не всегда является человек понимающий хоть что то во Flash, поэтому поменять что то в исходнике является огромной проблемой и зачастую такие люди бегут на форумы и просят помощи и в большинстве случаев бывают отшиты, потому что на такие примитивные вопросы, как - "Как поменять ссылку на которую выполняется переход по нажатию на кнопку ?" , мало кому охота отвечать, а найти самому ответ порой бывай тоже проблематичным, потому как не зная технологии трудно сформулировать запрос для поисковика. К чему я всё это ... а вспомнил, что бы ни у вас ни у ваших заказчиков не возникало подобных проблем, нужно просто уметь делать динамические меню на основе внешних файловых данных (таких как xml, txt и т.д.).

Приступим. Для начала разберём простой пример создания динамического меню на основе подгруженного xml, в котором будут названия кнопок и ссылки, по которым будет осуществляться переход при нажатии на кнопку. И так для начала открываем любой текстовый редактор, создаём новый файл и пишем в нём следующий код:

<menu><item name="Item 1" link="http://www.flashblog.ru" />
<item name="Item 2" link="http://www.flashblog.ru" />
<item name="Item 3" link="http://www.flashblog.ru" />
<item name="Item 4" link="http://www.flashblog.ru" />

<item name="Item 5" link="http://www.flashblog.ru" />
<item name="Item 6" link="http://www.flashblog.ru" />
<item name="Item 7" link="http://www.flashblog.ru" /></menu>

теперь сохраняем его как menu.xml, желатено в юникодовской кодировке (UTF-8) , что бы в дальнейшем не было проблем с отображением русских символов.

Далее открываем флеш, создаём новый документ и сохраняем его в той же папке что и menu.xml. Создаём в библиотеке мувик с задним фоном для кнопки (я взял размер 200х20 px). Теперь в первый кадр главного таймлайна пишем код:

menu_xml = new XML();
menu_xml.ignoreWhite = true;
menu_xml.onLoad = function(ok) {
if (ok) {
F_createMenu();
}
};
menu_xml.load("menu.xml");
//
F_createMenu = function () {
var len = menu_xml.childNodes[0].childNodes.length;
for (var i = 0; i<len; i++) {
_root.createEmptyMovieClip("btn"+i, i);
var b = _root["btn"+i];
b.attachMovie("back", "back", 1);
b.createTextField("tf", 2, 0, 0, 200, 20);
with (b.tf) {
selectable = false;
text = menu_xml.childNodes[0].childNodes[i].attributes.name;
}
b._y = (b._height+1)*i;
b.link = menu_xml.childNodes[0].childNodes[i].attributes.link;
b.onPress = function() {
getURL(this.link, "_self");
};
}
};

Тестируем и видим что всё прекрасно работает и для того что бы теперь добавить или убрать пункт в меню, достаточно поменять только xml и все дела.

Можно много чего добавить в наше меню, ну допустим мы хотим что бы каждая кнопка была заданного цвета, для этого просто добавим к каждому тегу xml атрибут color (ну или обзовите как вам удобно). Итак меняем наш xml на

<menu><item name="Item 1" link="http://www.flashblog.ru" color="0x006699" />

<item name="Item 2" link="http://www.flashblog.ru" color="0x996600" />
<item name="Item 3" link="http://www.flashblog.ru" color="0x00CC33" />
<item name="Item 4" link="http://www.flashblog.ru" color="0x99FFFF" />

<item name="Item 5" link="http://www.flashblog.ru" color="0x990000" />
<item name="Item 6" link="http://www.flashblog.ru" color="0xFFCC00" />
<item name="Item 7" link="http://www.flashblog.ru" color="0x996699" /></menu>

И немного модифицируем код во флешке и в самый низ нашего цикла добавляем пару строк

var my_color = new Color(b.back);        my_color.setRGB(menu_xml.childNodes[0].childNodes[i].attributes.color);

Разберём ещё один примерчик создания меню. Сделаем горизонтальное меню, в котором ширина кнопок будет зависеть от длинны текста. Воспользуемся xml из предыдущего примера. Создаём новый файл и пишем в первом кадре код

menu_xml = new XML();
menu_xml.ignoreWhite = true;
menu_xml.onLoad = function(ok) {
if (ok) {
F_createMenu();
}
};
menu_xml.load("menu.xml");
F_createMenu = function () {
var len = menu_xml.childNodes[0].childNodes.length;
for (var i = 0; i<len; i++) {
_root.createEmptyMovieClip("btn"+i, i);
var b = _root["btn"+i];
b.attachMovie("back", "back", 1);
b.createTextField("tf", 2, 0, 0, 200, 20);
with (b.tf) {
border = true;
selectable = false;
multiline = false;
autoSize = true;
text = menu_xml.childNodes[0].childNodes[i].attributes.name;
}
b.back._width = b.tf._width+20;
b._x = _root["btn"+(i-1)]._x+_root["btn"+(i-1)]._width;
b.tf._x = 10;
b.link = menu_xml.childNodes[0].childNodes[i].attributes.link;
var my_color = new Color(b.back);
my_color.setRGB(menu_xml.childNodes[0].childNodes[i].attributes.color);
b.onPress = function() {
getURL(this.link, "_self");
};
}
};

Всё с подробными комментариями так что обьяснять толком нечего. Как видно из этих примеров, всё предельно просто и ясно, а главное очень практично и удобно, для самых ленивых как всегда прикрепляю исходник.

Скачать Flash исходник к уроку

Продолжение в следующем выпуске.

Урок опубликован с разрешения автора — KUZEN.


Flash в вопросах и ответах


Вопрос:

Как сделать весь флеш-баннер кнопкой, т.е. как задать кнопку для всех слоев одновременно?
dkv023

Ответ:

Классический метод для создания кнопки для баннера следующий:

1) Создаётся флеш-баннер, с любым количеством слоёв и с анимацией любой сложности.

2) Создаётся новый верхний слой, в котором создаётся кнопка. На которую и ставиться обработчик нажатия с вызовом getURL со ссылкой на сайт.

3) Кнопка эта делается размером на весь ролик (размер баннера) и делается прозрачной (можно, например, альфа 100).

MustLive

Вопрос:

Как сделать так, чтобы во флеш меню выбранное положение кнопки сохранялось после загрузки соответствующий страницы?

Ответ:

Для этого есть четыре варианта:

1) Использовать фреймы. В меню просто остановите флешку в нужном месте - для фиксации кнопки.

2) Сделать отдельную флешку (меню) для каждого раздела, где это требуется. И в каждой отдельной флешке зафиксировать нужное состояние (явно указать текущий раздел).

3) Сделать сайт полностью на флеше. Тогда будет доступен полный контроль над состоянием всех элементов страницы (сцены). Но это уже глобальный вариант - нужно будет весь сайт переделывать, если он у вас на html.

4) Сделать одно флеш меню и на каждой странице при вызове флешки передать ей параметр (в том разделе, где это нужно). А внутри меню сделать обработчик: если есть параметр и он корректный - указать такой-то раздел "активным". Если же нет параметра (или некорректно задан), то показывается общее меню, без активных разделов.

Последний вариант наиболее оптимален.

MustLive

Вопрос можно задать на форуме в отдельном разделе или по e-mail: subscribe@flashzone.ru.

Post Scriptum

Все материалы этого выпуска авторские. Перепечатка разрешается только со ссылкой на автора и flashzone.ru.

Задать вопрос в раздел "Flash в вопросах и ответах" можно на форуме, либо по e-mail subscribe@flashzone.ru.

Авторы, мы ждём ваших статей!

По вопросам сотрудничества обращаться на e-mail max@flashzone.ru.
Принимаем заявки на обмен обзорами, текстовыми рекламными блоками, простыми текстовыми ссылками с сайтами и рассылками flash тематик.

Сайт рассылки: flashzone.ru.
Сайты авторов: danimult.ru (Даниэль), mlfun.org.ua (MustLive).




В избранное