множественное выделение объектов и взаимодействие[multiple selection]
Вложений: 2
Добрый день,
Есть некий трек-лист, наподобие обычного компонента List. По нему может перемещаться определенное кол-во объектов. Объекты перемещаются вверх, вниз. Вот никак не могу понять, как реализовать корректное перемещение этих объектов, если выделен не один объект, а несколько. Я, понимаю, что сперва нужно запомнить изначальное положение объектов и потом прибавлять к этим координатам обновленные, но, блин, что-то я не то делаю, получается не правильно. Пример прилагаю. Для выделения нескольких объектов, зажмите ctrl и кликайте на объекты, не отпуская ctrl тяните вниз||вверх. Код AS3:
|
Вложений: 2
Чтобы корректно перетаскивать один объект, вам достаточно запомнить координаты этого объекта (offset) при нажатии мыши. А при движении мыши, устанавливать объект в координаты мыши и отнимать ранее зафиксированные координаты (offset). Так сделайте это для каждого вашего объекта. Создайте массив, в который будете помещать смещение каждого объекта, а потом используйте эти данные.
Во флеше ниже, вы можете выделять объекты или группировать их с помощью ctrl. Комментарии в коде помогут вам понять, что к чему (по идее). Только в браузере ctrl не срабатывает (почему не знаю), по этому придётся открыть флешку локально. Main Код AS3:
Код AS3:
|
Цитата:
|
Цитата:
|
У меня в опере работает Ctrl+CLICK. Правда при попытке перетаскивания у меня с нажатого снимается выделение. Выделяйте и снимайте выделение при CLICK событии, а не на MOUSE_DOWN.
|
Цитата:
|
samana, большое спасибо за решение, целый урок вышел. Очень помогли мне.
|
строго говоря, такие перетурбации нужно делать с dataProvider (или, например с коллекцией данных для листа)
|
Часовой пояс GMT +4, время: 17:43. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.