Как обрабатывать события CLICK и MouseDown во Flex? - PullRequest
1 голос
/ 18 апреля 2011

У меня есть сценарий, в котором я слушаю события CLICK и MouseDown для объекта.

При MouseDown я делаю startDrag().А на клике я исполняю что-то еще.

Но проблема в том, что сначала вызывается событие MouseDown, которое инициирует перетаскивание.Событие щелчка не срабатывает.Как мне решить эту проблему?

1 Ответ

2 голосов
/ 18 апреля 2011

Вы можете прослушивать событие MouseDown и, когда оно срабатывает, подписываться на события MouseMove и MouseUp и запоминать координаты курсора на MouseDown.Затем определите дельту (скажем, 1px), которая будет признаком начала перетаскивания.Поэтому, если MouseMove вызывает, вы проверяете текущее положение мыши и определяете, действительно ли пользователь перетаскивает (используя вашу дельту).В этом случае вызовите startDrag().В другом случае будет вызвано событие Click.

И помните события отписки!:)

...