ГлавнаяActionScript 3 — «100 советов» › Перехват событий мышки и mouseEnabled

Перехват событий мышки и mouseEnabled

June 19th, 2006
MerlinTwi: Поскольку этот совет (Event Capturing and mouseEnabled) в оригинале практически дублирует (72. mouseEnabled и блокирование событий), видимо senocular где-то ошибся, то я сам расскажу еще про mouseEnabled.
К примеру, создаем класс текстовой кнопки, есть фоновый мувиклип, который растягивается под ширину текста и сверху на него накладывается текст (TextField). Если обработчики событий от мышки (MOUSE_OVER, MOUSE_OUT, CLICK) добавить к фоновому мувиклипу, то события будут срабатывать только на краях кнопки, где нет текста. Это происходит потому, что все интерактивные отображаемые объекты создаются по умолчанию с mouseEnabled=true, т.е. реагируют на события от мышки, а как было показано в предыдущих советах событие от мышки получает только самый верхний объект на сцене. Поэтому в таких случаях нужно не забывать запрещать текстовому полю перехватывать события от мышки:

Код:
mouseEnabled=false;

А вообще, при создании кнопки лучше сделать:

Код:
buttonMode=true;

Категория: ActionScript 3 — «100 советов» Ярлыки: ,

Смотрите также

Proxy: методы перечисления (nextName(), nextValue(), nextNameIndex()) Flash 9: Strict Mode
  1. Пока без комментариев.
  1. Пока нету.