|
|
« Предыдущая тема | Следующая тема » |
Опции темы | Опции просмотра |
|
|
|||||
Регистрация: Aug 2010
Сообщений: 91
|
Перехватить MouseEvent и послать далее
Ситуация такая: есть контейнеры на флешке. В них добавляются мувики (SimpleButton). Нужно чтобы при нажатии на мувик, мы переходили по ссылке. Но прикол в том, что мы не можем заставить слушать событие мувик, только контейнер. Но контейнер не регистрирует событие, т.к. его перехватывает мувик. А если мы отключим мувику мышь, то он перестанет изменяться при наведении мыши и клике. Как бы красиво выйти из ситуации?
|
|
|||||
Регистрация: Apr 2008
Адрес: Россия, Новосибирск, Академгородок
Сообщений: 355
|
SimpleButton - это стандартный класс кнопки а не мувика. Когда вы щелкаете по кнопке, то событие передается по всей цепочке от stage к вашей кнопке и потом обратно пузыриком к stage. Прервать передачу события можно в любом зарегестрированном слушателе с помощью event.stopPropagation() или event.stopPropagationImmediate(). Если вы этого не делаете, то ловите спокойно событие на любом из объектов списка отображения от кнопки до всех в которые она вложена.
__________________
Хочу IQ как ICQ, ну или хотя бы ICQ как IQ |
|
|||||
Регистрация: Aug 2010
Сообщений: 91
|
Это я так выразился. Это swf-ки, у которых на stage добавлена кнопка (причем работать должно и с обычными роликами, потому и "мувики"). А слушателя цепляю к MovieClip, в который добавляется ролик.
Если прописать mouseChildren = false, то ролики нажимаются, но не реагируют на наведение мышью, в противном случае реагируют, но не нажимаются. Как решить? |
|
|||||
.
|
Цитата:
Цитата:
|
|
|||||
Регистрация: Apr 2008
Адрес: Россия, Новосибирск, Академгородок
Сообщений: 355
|
Выложи исходник, так дело быстрее пойдет.)
Каюсь, подцепил какую то заразу, голова плохо соображала когда набирал.
__________________
Хочу IQ как ICQ, ну или хотя бы ICQ как IQ |
|
|||||
блогер
Регистрация: Jun 2005
Адрес: Господи пожалуйста не Новосибирск
Сообщений: 6,598
Записей в блоге: 17
|
Цитата:
А почему не подписать бы этот СимплоБутонМувик?
__________________
Тут мужик танцует и поёт про флэш |
|
|||||
Регистрация: Aug 2010
Сообщений: 91
|
Исходник показать, увы, не могу (политика компании - запрещено передавать код сторонним лицам - у нас в нем очень инновационные идеи)
Подписать нельзя, потому что добавляется он в другом классе, в который лезть крайне нежелательно. К тому же в контейнере может быть не только кнопка, но и мувиклип или даже битмап. |
|
|||||
Et cetera
Регистрация: Sep 2002
Сообщений: 30,784
|
Инновационнее некуда (особенно SimpleButton). Потом и на работу брать некого из-за «инноваций».
|
|
|||||
блогер
Регистрация: Jun 2005
Адрес: Господи пожалуйста не Новосибирск
Сообщений: 6,598
Записей в блоге: 17
|
Извините, если я сейчас Вас оскорблю, но в
Цитата:
Но в целом революция есть. [Embed(source = '../lib/1-1.png')] private var pic:Class; public function Main():void { var spr:Sprite = new Sprite(); (spr.addChild(new MovieClip()) as DisplayObjectContainer).addChild(new pic() as Bitmap); //строчка ужас, просто писать лень =) spr.addEventListener(MouseEvent.CLICK, onClick); super.addChild(spr); } private function onClick(event:MouseEvent):void { trace("белочка"); }
__________________
Тут мужик танцует и поёт про флэш |
Часовой пояс GMT +4, время: 20:44. |
|
« Предыдущая тема | Следующая тема » |
Теги |
MouseEvent |
|
|