Flex Drag and Drop - PullRequest
       1

Flex Drag and Drop

0 голосов
/ 23 февраля 2011

У меня есть изображение, которое я показываю внутри холста, которое я могу увеличить. Проблема заключается в том, что при увеличении я пытаюсь перетащить изображение, я могу видеть контур изображения на переднем плане (то есть) за границей холста. Можно ли как-то сказать, что dragHandler обрезает «захваченное» изображение за пределами холста?

1 Ответ

0 голосов
/ 23 февраля 2011

По моему опыту, использование встроенных средств перетаскивания / перетаскивания излишне для чего-то, что предполагает перемещение компонента по холсту.

Самый простой способ сделать это (на мой взгляд) - слушатьдля мыши вниз / вверх / переместить изображение вокруг на холсте самостоятельно.

Когда вы обнаружите мышь на изображении, добавьте слушатель для перемещения мыши (совет: убедитесь, что вы установили значение true для useCapture при вызове addEventListener) и сохраните положение мыши относительно источника вашего изображения,Затем всякий раз, когда вы двигаете мышью, меняйте положение вашего изображения на холсте, учитывая положение мыши на изображении (которое вы сохранили при наведении мыши).Продолжайте делать это до тех пор, пока не появится мышь, затем удалите слушателя перемещения мыши.

Есть несколько дополнительных тонких моментов, которые нужно учитывать (что, если пользователь перетаскивает за пределы холста? Или за пределы окна браузера?),но это поможет вам начать.

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...