MovieClip теряет handCursor, когда TextField добавлен к нему, почему? - PullRequest
0 голосов
/ 14 сентября 2011

Я делаю приложение, в котором мне нужно создать все элементы управления по коду, чтобы не использовался flash ide.Я также создаю btn: MovieClip, который будет кнопкой, и я добавляю к ней прослушиватели событий, а также useHadCursor и ButtonMode имеют значение true.Я также добавляю статическое текстовое поле с текстом «Сохранить», так что это будет кнопка сохранения.

Но когда я добавляю текстовое поле, мувиклип перестает показывать курсор в виде руки.Что я делаю не так?

Ответы [ 3 ]

1 голос
/ 14 сентября 2011

Я предполагаю, что проблема вызвана текстовым полем. Сказав это, если ваш мувиклип имеет только текстовое поле, попробуйте установить mouseChildren в false. Таким образом вы можете эффективно запретить включение мыши для всех экземпляров в любом контейнере экранного объекта. Но помните, что это будет применяться ко всем дочерним элементам.

Вы можете отключить взаимодействие с мышью, установив для свойства mouseEnabled значение false для определенного текстового поля, которое вы хотите. Однако, если вы хотите отключить определенные события мыши только для коллекции объектов в контейнере, вам нужно использовать альтернативный подход. В этой ситуации вы будете использовать прослушиватель событий в целевом родительском экземпляре, прослушивающем событие для отключения, и этот слушатель остановит распространение этого события. Это предотвращает вызов слушателей, работающих для объектов в этом контейнере.

1 голос
/ 14 сентября 2011

theTextField.selectable = false; должно быть достаточно.Если для mouseEnabled или mouseChildren задано значение false, в определенных ситуациях это может привести к нежелательным последствиям.

PS: Если для одного из его родителей useHandCursor не установлено значение true.Затем WILL необходимо mouseChildren для родительского элемента, установленного в false, или mouseEnabled, установленного в false в TextField.

1 голос
/ 14 сентября 2011

В прошлом у меня были проблемы с TextFields и курсорами.Кажется, что TextFields имеют некоторые особые характеристики, которые дают ему приоритет над событиями мыши.Это важно для того, чтобы при наведении указателя мыши на TextField вы могли получить курсор ввода текста для ввода TextFields.

Что касается решения, попробуйте установить для свойств mouseEnabled и selectable значение false на TextField.

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