![]() |
очередной вопрос про пользовательское событие
прочитал много тем по данному вопросу, но так и не нашел ответа.
у меня есть несколько классов они наследуются у MovieClip. соответственно есть несколько клипов, по одному для каждого класса. В каждом из этих классов генерируется пользовательское событие (оно генерится при нажатии на клип) и вот когда я слушаю это событие то как мне определить каким клипом оно было сгенерировано??? на данный момент я смотрю значение event.target там содержится строка вида [object <имя класса>], но считаю это не очень удобным, так как приходится сравнивать строки и сравнений выходит давольно много. Есть какие то способы более гшибкого подхода к этому вопросу?? |
ну можете им айдишники какие нибудь прицепить. сравнения то все равно будут, только по какому то значению, а не по адресу.
|
сравнивать объекты. и быстрее и правильнее.
|
Цитата:
|
Цитата:
|
в функции, которая вызывается при клике на клипе:
Код AS3:
|
ну если это то, что Вам необходимо, зачем Вы делаете сравнение по строковым значениям?
|
Цитата:
|
рас не с чем, то с чем Вы сравниваете? я не понимаю, что Вы добиваетесь своим сравнением, и зачем его делаете.
|
у меня есть 4 клипа-кнопки и 4 клипа курсора. Слушатель нажатия на кнопки находится там где выбирается какой курсор показать. и мне необходимо узнать какая кнопка нажата чтобы показать соответствующий курсор.
Проблема в том, что количество кнопок и курсоров увеличится, и тогда сравнений получится очень много. |
event.target.name
|
@Karandash8
Код AS3:
|
Цитата:
Добавлено через 1 час 18 минут Цитата:
DocClass{ Tools{ ButtonWateringPot ButtonLoosenTool ButtonBagWithBugs ButtonSunShining } WateringPot LoosenTool BagWithBugs SunShining } здесь соответственно ButtonWateringPot, ButtonLoosenTool, ButtonBagWithBugs, ButtonSunShining - это кнопки; WateringPot, LoosenTool, BagWithBugs, SunShining - это курсоры. пользовательское событие начинается в каждой из кнопок, а отлавливается в классе Tools и после этого назначается нужный пользовательский курсор. На данный момент я реализую это так: в классе Tools создаю два массива, один содержит обьекты курсоров, а второй текстовые имена классов кнопок. Причем индексы для пары кнопка-курсор совпадают. После этого при отлове события, я в цикле сравниваю event.target с элементами массива имен, при совпадении, назначаю пользовательский курсор из массива курсоров с текущим индексом. Получилось относительно коротко, но лучший ли это вариант?? |
Таже самая фигня
Код AS3:
Упс, спасибо уже ответили пока писал своё сообщение :) upd Не, ничего не помогло. Если писать в кадрах, то event.target.name верно определяет b1 и b2, а если внутри класса то поеределяет как instance25 :umnik2: |
ramshteks Вам вполне верно написал: если вы расширяете MovieClip'ы своими классами, заведите в классах поле
Код AS3:
Код AS3:
|
| Часовой пояс GMT +4, время: 05:11. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.