![]() |
вложеные компоненты и dragManager
Вложений: 1
ситуация: есть два компонента (один в одном). на них можно перетащить другой компонент (инициатор). только необходимо организовать различное поведение при отпускани инициатора.
подписался на события DRAG_ENTER и DRAG_DROP. при наведении на вложеный компонент DRAG_ENTER сробатывает для обоих компонентах, но при отпускании DRAG_DROP срабатывает только для родительского (контейнера). необходимо, чтобы при наведении на пустое место (надпись "test" в прилагаемом файле) срабатывал обработчик контейнера, а при наведение на вложенный компонент (ораньжевый прямоугольник в прилагаемом файле) срабатывал обработчик этого компонента. может я что-то не так сделал? |
Предположительно криво работает драг-менеджер.
|
просмотрел исходники драгменеджера. работает он нормально. он просто диспатчит событие DRAG_ENTER всем компонентам начиная с самого глубокого. при этом он запоминает самый верхний компонент. именно ему он и диспатчит событие DRAG_DROP при отпускании.
хотя наверно логичнее было бы диспатчить наиболее глубокому компоненту. привожу свое решение. Код AS3:
|
| Часовой пояс GMT +4, время: 17:08. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.