TextField - вести себя как PowerPoint - PullRequest
0 голосов
/ 06 апреля 2010

У меня есть динамическое TextField, созданное с помощью ActionScript (multiline, wordwrap & autosize = true).

При запуске SWF, если вы щелкнете в TextField, вы получите стрелку «переместить» курсор, затем вы можетедважды щелкните, чтобы перевести его в режим редактирования, чтобы выделить текст.Я хочу, чтобы он работал как PowerPoint - если вы щелкнете по полю, у вас всегда будет мигающий курсор с возможностью выделения / вставки текста, и вы можете щелкнуть по границам для перетаскивания или по углам для изменения размера.

Я попытался добавить событие focusIn textField.stage.focus = this.textField, но, похоже, это ничего не дало.Когда вы щелкаете в textField, я в основном хочу, чтобы он действовал так, как если бы вы выполняли двойной щелчок (режим редактирования), фактически не выполняя двойной щелчок.

Бонус: вместо 2-го двойного-Кликните, возвращая вас в режим перемещения (или как там он называется). Я хочу выделить весь текст.

TL; DR: Есть ли какое-либо свойство динамического TextField, которое я могу получить / установить, чтобы увидеть, если я 'м в режиме редактирования или перемещения?

1 Ответ

0 голосов
/ 07 апреля 2010

класс TextField создан не для того, что вы хотите.

Что вам нужно сделать, это создать подкласс Sprite. Давайте назовем это SuperDuperTextField. Вам нужно будет добавить всю логику интерактивности в SuperDuperTextField. Этот SuperDuperTextField в свою очередь содержит TextField для функции отображения и редактирования текста.

, не находясь в режиме редактирования, вы можете установить selectable на TextField и mouseChildren на SuperDuperTextField на false, чтобы MouseEvent с работал правильно.

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

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

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