![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|
|
|||||
|
Час добрый.
есть задача, сделать кнопку в которой будет выезжать ещё несколько. т.е. получается, на стейдже есть кнопка при наведении на которую на ней появляется ещё несколько и надо узнать на какую кликнул юзер. Не могу сообразить как это сделать. // Вот пример : // Интерфейс который наследуют все объекты MyButton interfsce IMyButton { function MOUSE_DOWN ( e : MouseEvent = null ) : void ; } // Основной класс var globalButton : MyButton = new MyButton ( ) ; addChild ( globalButton ) ; function addButton ( ) : void { globalButton.addChild ( new MyButton ( ) ) ; } stage.addEventListener ( MouseEvent.MOUSE_DOWN, onClickButton ) ; function onClickButton ( e : MouseEvent ) : void { if ( e.target as IMyButton ) IMyButton ( e.target ).MOUSE_DOWN ( e ) ; } // Избавиться от интерфейса накладно весь проект рубить. // Есть возможность с иерархией диспетчеризацией, // но как гуглу задать желаемый вопрос не соображу.
__________________
Спросишь, дурак на минуту. Если не спросишь, дурак на всю жизнь! |
|
|||||
|
Регистрация: Oct 2011
Адрес: Питер
Сообщений: 58
|
Цитата:
|
|
|||||
|
Суть в том что сами кнопки не знают о том кто они, их определяет сонтроллер по интерфейсам которые они наследуют! И тут выходит что при определении таргета в контроллере срабатывает слушатель и далее не обрабатывается таргет! Мне же нужно что бы при определении "таргет == кнопка" он продолжал слушать, типа а в этой кнопке нет ещё кнопки? Вот как сделать это я не знаю!
При использовании currentTarget, трейсит всё время // object stage Добавлено через 2 минуты хм, а как мне узнать является ли e.target IMyButton ? ведь в ином случае он будить пытаться применить такой же метод ко всем объектам на стейдже.
__________________
Спросишь, дурак на минуту. Если не спросишь, дурак на всю жизнь! |
![]() |
![]() |
Часовой пояс GMT +4, время: 22:04. |
|
|
« Предыдущая тема | Следующая тема » |
|
|