![]() |
Реализация onReleaseOutside
Собственно меня интересует ответ на сабж, как сделать это событие в AS3. Если кто-то уже поднимал этот вопрос киньте ссылку, по поиску ничего не нашел.
|
onReleaseOutside() EventHandler
---- flash.display.InteractiveObject dispatches event: mouseUp ---- Replaced in the new event model by a mouseUp event after a call to flash.display.InteractiveObject.setCapture(). ---- Topic: ActionScript 2.0 Migration. |
InteractiveObject.setCapture убрали.
Можно так: Код:
package { |
может я что-то не догоняю, но что это за flash.display.InteractiveObject и как его использовать?
|
Это базовый класс для DisplayObjectContaiener который в свою очередь базовый для Sprite. ну а Sprite базовый для MovieClip
|
MerlinTwi, это в хелпе Flex 2 8)
|
MerlinTwi попробовал не работает, то есть когда за пределами клипа не срабатывает событие, хотя вроде должно.
|
__etc, старый хелп, пора обновить :)
см. livedocs.macromedia.com коммент от Jul 25, 2006 at 6:49 PM |
UPD
Работает со stage. В общем со stage фактически как использовать parent, то есть не совсем хороший способ |
То если есть вложенность и когда я нажимаю на объект, срабатывает 2 события MOUSE_DOWN и что тогда?
|
NewMan_by, не понял, как 2 события MOUSE_DOWN ?
|
MerlinTwi,
на случай если над stage есть объекты с MOUSE_UP, которые будут перекрывать MOUSE_UP сцены cчитаю нужным немного добавить: Код:
package { |
artcraft, вроде бы MOUSE_UP срабатывает, если отпускать кнопку мыши за пределами флешки.
|
вроде должен, но у меня в FF не всегда
|
точнее, если утянуть мышку за пределы браузера и только там поднять кнопку
|
artcraft, у меня за пределами браузера тоже срабатывает. Не срабатывает, только если удерживая кнопку мыши переключить фокус на другое приложение.
Кстати, если ловить mouseUp на стадии capture, то событие не срабатывает, если отпускать мышку на пустом месте stage, где нет никаких объектов. В результате: если добавить проверку на потерю фокуса и необязательно чтобы у кнопки стояло buttonMode=true, то проверка будет выглядеть так: Код:
package { |
Цитата:
|
Кстати, еще стоит учесть, что в методе mouseUp объект может быть уже удален с timeline и stage==null. Поэтому ссылку на stage стоит запомнить в методе mouseDown.
|
В дополнение нашего обсуждения, полезный совет от senocular
81. Глобальные события |
| Часовой пояс GMT +4, время: 06:59. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.