Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 18.11.2009, 21:04
SamFR вне форума Посмотреть профиль Отправить личное сообщение для SamFR Посетить домашнюю страницу SamFR Найти все сообщения от SamFR
  № 11  
Ответить с цитированием
SamFR

Регистрация: Mar 2008
Адрес: Ростов-на-Дону
Сообщений: 354
По той, наверное, что не уверены в том, что в будущем он не подвергнется модификации. Пропадёт – вряд ли, но изменить что-то могут. Обычно что-либо не документируют именно по этой причине.

К слову, его усиленно использует не только флексовый фреймворк, но и Flash IDE. Написанный в кадрах код внедряется в мувиклип именно с помощью этого метода, причём код каждого кадра оформляется как отдельный метод frameN(), где N – номер кадра. В этом можно легко убедиться, если создать мувик и залинковать его как наследника Sprite, а в кадре попробовать что-то написать. Запускаем и видим, что компилятор не может найти метод addFrameScript() у объекта Sprite, а именно в строчке addFrameScript(0, frame1).


Последний раз редактировалось SamFR; 18.11.2009 в 21:31.
Старый 18.11.2009, 22:07
alekslitvinenk вне форума Посмотреть профиль Отправить личное сообщение для alekslitvinenk Посетить домашнюю страницу alekslitvinenk Найти все сообщения от alekslitvinenk
  № 12  
Ответить с цитированием
alekslitvinenk
 
Аватар для alekslitvinenk

Регистрация: Oct 2005
Адрес: Москва
Сообщений: 491
Отправить сообщение для alekslitvinenk с помощью ICQ Отправить сообщение для alekslitvinenk с помощью AIM Отправить сообщение для alekslitvinenk с помощью Skype™
хм, а я думал что про этот метод уже давно все знают...
смысла его использовать тоже не вижу...
недокументируется он по всей видимости из-за того что используется только флешевым компилятором при сборке swf-ок для добавления кода, который написан в кадрах

Старый 19.11.2009, 01:40
SamFR вне форума Посмотреть профиль Отправить личное сообщение для SamFR Посетить домашнюю страницу SamFR Найти все сообщения от SamFR
  № 13  
Ответить с цитированием
SamFR

Регистрация: Mar 2008
Адрес: Ростов-на-Дону
Сообщений: 354
Да нет, во Флексе он тоже используется, однако сильно полагаться на него я всё же не стал бы. Особенно в коммерческих проектах.

Старый 19.11.2009, 09:14
kackbip вне форума Посмотреть профиль Отправить личное сообщение для kackbip Найти все сообщения от kackbip
  № 14  
Ответить с цитированием
kackbip
 
Аватар для kackbip

Регистрация: Sep 2007
Адрес: Tomsk
Сообщений: 943
Отправить сообщение для kackbip с помощью ICQ Отправить сообщение для kackbip с помощью Skype™
Я не думаю, что его могут модифицировать. Тогда в новом FP с модифицированным методом addFrameScript не будут проигрываться флэшки созданные для старых FP.
Такое конечно уже было при переходе FP8 -> FP9, но не думаю, что это повторится скоро, а если и повторится то проблема будет либо не только в addFrameSript либо совсем не в нем.

Так что ИМХО - пользуйтесь спокойно этим методом.

Старый 19.11.2009, 09:48
Котяра вне форума Посмотреть профиль Отправить личное сообщение для Котяра Посетить домашнюю страницу Котяра Найти все сообщения от Котяра
  № 15  
Ответить с цитированием
Котяра
буду краток
 
Аватар для Котяра

модератор форума
Регистрация: Sep 2003
Адрес: Ближайшее Замкадье
Сообщений: 3,110
Записей в блоге: 28
Отправить сообщение для Котяра с помощью ICQ Отправить сообщение для Котяра с помощью Skype™
Цитата:
Сообщение от alekslitvinenk Посмотреть сообщение
хм, а я думал что про этот метод уже давно все знают...
Я вот не знал)
потестировал её немного:
вот некоторое резюме:
Код AS3:
addFrameScript(frame, func)
- работает с ф-циями также как и addEventListener (в смысле областей видимости и делегирования)
- при повторном переопределении для кадра удаляет предыдущие ф-ции (скорей всего имеется обычный массив ссылок на ф-ции) - можно удалить динамически код прописанный в кадре, а также сделать подобие removeEventListener
Код AS3:
addFrameScript(frame, null);
- как я уже написал выше - нельзя определить несколько обработчиков - если очень надо - в ф-ции func диспачте событие и подписывайтесь уже на него.

По поводу применения - фича всё-таки довольно интересная. например легко обработать событие полного проигрывания клипа
Код AS3:
addFrameScript(totalFrame-1, endPlaying);
вместо того чтоб в энтерфрэме проверять на
Код AS3:
currentFrame==totalFrame
Да много для чего можно использовать..

ps: тонкости addFrameScript
__________________
Отряд Котовскага


Последний раз редактировалось Котяра; 19.11.2009 в 10:07.
Старый 19.11.2009, 17:33
Himerets вне форума Посмотреть профиль Отправить личное сообщение для Himerets Найти все сообщения от Himerets
  № 16  
Ответить с цитированием
Himerets
 
Аватар для Himerets

Регистрация: Oct 2009
Адрес: Калининград
Сообщений: 134
Ну да. С одной стороны для реализации некоторых целей можно повесить лисенер на EnterFrame и обойтись совершенно без этого метода, с другой стороны - с ним красивше как-то, да и работать быстрей наверно будет, если лишний раз не обрабатывать EnterFrame

Создать новую тему Ответ Часовой пояс GMT +4, время: 22:45.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 22:45.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.