![]() |
Как Правильно обратиться к мувиклипу на сцене
Доброго дня суток
Столкнулся с такой проблемой, На основной сцене есть мувиклип. В конце анимации появляется кнопка. Вопрос Как с основной сцены обратится к этой кнопке ?? ибо на мои попытки он отвечает матом. ) а пытаю я, следующим образом Код AS3:
|
1) Пишите код в классах, если пишите не в них (так намного удобнее и лучше, поверьте)
2) Чтобы матершины на ваши попытки не было) нужно обращаться к кнопке, только тогда когда она появиться, а именно в конце анимации, как это сделать решайте сами, можно поставить условие |
Цитата:
Цитата:
Затем в нужном кадре увеличить до 100%. Память будет занимать, конечно, но, думаю, не критично. |
Перенес я все это в классы.
Но почему то не хочет срабатывать лисенер и вызывать функцию, выглядит это примерно так Код AS3:
|
в классе тоже придётся обращаться к кнопке когда она появиться
adobe flash у меня сейчас не установлен так что за правильность ручаться не могу, не проверял, но примерно так должно быть Код AS3:
Цитата:
Код AS3:
Код AS3:
|
Спс огромный.
Я в АС дуб бубом ((( . Подскажите плиз Как правильно сделать проверку на какую кнопку навел мышкой ? чтоб не плодить 150 функций. |
каждой кнопке задавайте имя name = "button1"; и повесьте слушатель на каждую кнопку
потом в обработчике события можно узнать имя кнопки e.target.name кстати можно и так анимацию кнопки запустить e.target.play(); |
О великий гурру ))) Бью челом и низко кланяюсь ))
|
Код AS3:
|
Можно switch-case реализовать побыстрее (правда, к теме это уже мало относится):
Код AS3:
|
А потом нам потребуется еще что-то сделать, если это кнопка 1, и придется добавить условие. И спрашивается нахрена так извращаться? Создавать целый Dictionary ради 5 кнопок? Эт как на охоте по муравьям из базуки стрелять, имхо и код dimarik-а гораздо читабельней.
|
Хм. А вы знаете, что Object - это такой же HashMap, как и Dictionary, только принимающий исключительно строковые ключи? Спрашивается - зачем так извращаться и создавать целый Object, когда можно обойтись... А вот и нельзя обойтись =) У нас тут все Object.
На счет условия - оно должно быть обработано в хэндлере кнопки 1. Смысл поста сводится к оптимизации switch-case и мало относится к теме. О чем, собственно я и написал. Что касается извращений - я считаю, что это оптимизация. Не везде применимая, но все же. |
Цитата:
Пример: Код AS3:
Код AS3:
Ну и вот: Код AS3:
Код AS3:
Цитата:
Цитата:
Цитата:
Цитата:
P.S. Поправьте меня, если я ошибаюсь. |
Цитата:
Красивее, да. Мне очень нравится. |
Ну смотри - switch-case последовательно проходит все варианты. Скорость выбора варианта в худшем случае ~O(n), где n - число вариантов. В случае с Dictionary скорость доступа к данным всегда ~O(1).
Память - да, 420 байт это просто ужасно. Особенно для длинного switch-case. Цитата:
|
Да, только in не нужен. foo[bar] работает как ~O(1).
|
Да, по производительности теория разошлась с практикой =) Ну чего я могу сказать, Adobe опять молодцы.
in можно убрать без проблем: Код AS3:
|
И еще немного )
Код AS3:
Код AS3:
|
Цитата:
|
Цитата:
|
Т.о. объект это нечто "статико-динамическое", и пока он статичен, он потребляет меньше ресурсов. И он не HashMap<String, *>.
|
| Часовой пояс GMT +4, время: 23:45. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.