![]() |
последовательность исполнения клипэвентов
Хотелось бы узнать в какой последовательности исполняются клипэвенты разных клипов лежащих допустим в корне.
Спасибо. |
А опытным путём проверить лениво?
|
я попробовал, но всё равно не понятно было.
|
Трейсов понаставь с разными значениями и смотри, в какой последовательности они исполняются.
|
гы гы
а мне всегда было интересно, что за конь придумал такую сортировку объектов?
for(t in _root){ i++; trace("№"+i+" - "+t); } Зуб даю что индус напакостил! ;) |
я не кончил...
что-то у меня с мыслей случилось и отправил недопИсав...
так вот... в мпроект где в руте куча клипов вставляем код, пишем в _root: function me() { trace(this); } for (t in _root) { _root[t].onMouseUp = _root.me; } теперь жмем мышЕ на левый глаз (Button) и читаем имена клипов.... по порядку номеров... |
Блин, а как регулировать этот процесс? Тоесть как сказать этому клипу чтобы он запустился первым, этому вторым и т.д.
Ах да! и всё это для пятёрки... |
какой такой павлин-шмавлин?
ты бы сразу объяснил чего тебе надобно от несчастного флэша... нафига тебе менять порядок реакции клипов на события? :confused:
могу предположить такой вариант (из далекого детства) :p сделали меню состоящее из кнопок (клипов) для каждой кнопки прописано событие onMouseDown (нажат батон мыши), но они гады все одновременно отрабатывают это событие! Ай яй яй. какая беда! Как же сделать так чтобы нужный клип первым и единственным отрабатывал это событие? и тут мы вспоминаем о hitTest - и все становиться пучком! К чему я клоню? мммммм... забыл.. :confused: ах да! ;) ищи другой способ решения вопроса! Если закон не отменить, его надо обойти! :cool: |
Боюсь не всё так просто :-).
Есть клип ( кажется его обычно называют монитором) который расчитывает положение других клипов и передаёт им их координаты. Потом эти клипы смотрят у себя эти координаты и идут по ним. Вообщем надо чтобы монитор срабатывал первым, а отальные клипы уже после него. |
все еще проще...
м-да..
не вижу смысла что-то менять в механизме обработки... продумай лучше алгоритм передачи переменных... по моему совсем не имеет значение кто из клипов сработает первым, а кто вторым если учесть что они опрашиваются 12 раз в секунду. Ну а если принципиально чтобы самый первый ход был за клипом конроллером, то поставь ему первую передачу переменных в событие кроме onEnterFrame еще и в onLoad, а остальным двум обработку значений в onEnterFrame. |
Цитата:
Ну вот нужно мне! Ты лучше скажи можно или нельзя? |
можно...
все можно если нужно!
можно например перемещение клипов 1 и 2 оформить в виде внешних функций, которые и будет вызывать контроллер ТОЛЬКО вслед за тем как вычислит их новые координаты! Чего ты привязался к рапределенному коду? Централизуй его хотя бы в той части в которой это критично и не нужно будет извращаться! Ну а если ты такой принцЫпиальный, то можно заметить из приведенного мною выше кода, что клип созданный последним (по умолчанию), первым обрабатывает событие. так что создай сначала клип 2 потом клип 1, а уж потом контроллер и все будет пучком! Хотя я бы так не делал! Как-то это неправильно! Успехов! |
Вот спасибо :-).
|
Кстати, а какой код работает быстрее? Централизовнный или распределённый?
|
Для таких случаев очень полезно ипользовать ASBroadcaster.
Описание с примерами здесь ... http://www.umbc.edu/interactive/flas...oadcaster.php3 |
| Часовой пояс GMT +4, время: 11:15. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.