Прокрутка холста - PullRequest
0 голосов
/ 16 мая 2011

У меня есть Canvas с VGroup внутри, который заполнен объектами различных типов, некоторые из которых имеют mouseEvents, такие как MOUSE_OVER.

Проблема, с которой я сталкиваюсь - заставить Canvas правильно прокручивать мышьюрулевое колесо.Это будет работать только в том случае, если мышь находится над полосами прокрутки.

Я попытался подделать его, прислушиваясь к колесу мыши на сцене, а затем вручную прокручивая Canvas.Но когда холст прокручивается туда, где объект перемещается под мышью, все становится ужасно.

Есть предложения?

позаботьтесь, ли

ОБНОВЛЕНИЕ:

Хорошо.Я обнаружил, что если я использую холст без моего добавления, он прокручивается только тогда, когда мышь находится над объектом внутри него.Если мышь находится в пустой области, она не прокручивается.

Когда я говорю «мышь находится над объектом внутри него», я имею в виду текстовые поля и другие объекты, имеющие визуальные элементы.

Ok.Я нашел частичное решение.Если я перехватываю событие mouseWHeel в VGroup, прокрутка работает.Однако, когда я добираюсь до объекта RichEditableText в VGroup, прокрутка останавливается.Раньше он просто прокручивался.

1 Ответ

1 голос
/ 08 марта 2012

Нашел интересное решение здесь.Событие mouseWheel не запускается на холсте, если он не находится над объектом InteractiveObject, т. Е. Текстовыми полями и т. Д. Однако, когда я проверял, чтобы убедиться, что моя мышь действительно находилась на холсте, я обнаружил, что событие инициируется в «белом» пространстве.между объектами, если на холсте установлено свойство backgroundColor.Итак, установите этот backgroundColor и, если вы не хотите фон, то установите backgroundAlpha на 0.

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