MouseDown / MouseMove / Проблемы с щелчками с помощью Flex Drag and Drop - PullRequest
1 голос
/ 16 сентября 2009

В Flex 3 у меня есть ItemRenderer, в котором есть кнопка. Я хочу, чтобы пользователи могли щелкать и перетаскивать этот рендерер, а также просто нажимать кнопку.

Сейчас он работает с Renderer, слушающим «MouseMove», чтобы инициировать перетаскивание, и кнопкой, слушающей «click».

Однако это очень странно. Если кто-то перетаскивает полосу прокрутки и приближается к этому средству визуализации, MouseMove запускается на устройстве визуализации и инициирует перетаскивание. (или если кто-то изменяет размер HDividedBox, в основном, если кто-то инициировал щелчок в любом месте приложения и перевернул этот рендерер, мы получаем нежелательное перетаскивание.

Альтернативой является прослушивание MouseDown вместо MouseMove, которое исправляет предыдущую проблему, однако вложенная кнопка теряет свой щелчок. Я могу нажать на кнопку, но средство визуализации просто думает, что пора перетаскивать.

Есть ли что-нибудь вокруг этого?

1 Ответ

2 голосов
/ 16 сентября 2009

Быстрый и простой способ справиться с этим - с помощью кнопки прослушать MouseDown и предотвратить возникновение пузыря у вашего Renderer, вызвав event.stopPropagation () в прослушивателе событий.

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