Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   При отключении mouseEnabled срабатывает роллаут (http://www.flasher.ru/forum/showthread.php?t=135401)

nOobCrafter 22.01.2010 14:16

При отключении mouseEnabled срабатывает роллаут
 
Вложений: 1
День добрый, сосбна вчера наткнулся на проблему с которой раньше не встречался, при отключении обратчиков мыши у меня срабатывает обработчик ролловер, это вообще нормально или нет? Причем такое происходит если я кликнул напрямую по обьекту. Костыльл в принципе потавил, но хотелось бы разобраться в чем тут дело. В аттаче хорошо поясненный пример.

Jewelz 22.01.2010 14:47

пример не открывал, но может mouseChildren тоже надо отключить?

nOobCrafter 22.01.2010 15:33

пробовал, не помогает, да и там кнопка спрайт, в ней текстфилд, с изначально отключенным mouseEnabled.

yorlin 22.01.2010 17:54

Проблема в классе PageButton, надо ж лисенеры вешать на сами элементы...

Код AS3:

        public function PageButton(label:String, fontSize:int = 12)
                {
                        _label = TextEditor.makeATF(label, 0x333333, fontSize);
                        _label.mouseEnabled = false;
 
                        buttonMode = true;
                        useHandCursor = true;
                        alpha = .5;
                        addChild(_label);
                        _label.addEventListener(MouseEvent.ROLL_OVER, onRollOverHandler);
                        _label.addEventListener(MouseEvent.ROLL_OUT, onRollOutHandler);
                }


nOobCrafter 23.01.2010 01:36

yorlin эм..вообще то листенер я на сам класс вешаю, он же у меня спрайт, а поле там просто так, что бы было видно что за кнупочка, или это плохая практика?

yorlin 25.01.2010 14:25

Немного странная у вас реализация класса...

Ну проблема наверно в том и есть, что вешаете на класс слушатель. Далее все объекты класса имеют общий слушатель, за счет этого и имеете ролаут.

nOobCrafter 26.01.2010 01:20

yorlin, немного непонял чем он странный, можно пример правильной на ваш взгляд реализации?
Цитата:

Далее все объекты класса имеют общий слушатель, за счет этого и имеете ролаут.
как понять имеют общий слушатель — там из обьектов тольо текстовое поле с отключенной реакцией на мышь...?


Часовой пояс GMT +4, время: 12:32.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.