Просмотр полной версии : Обработать нажатие клавиши Enter
Обрабатываю событие onChanged объекта TextField.
Каким образом я могу зафиксировать в нем нажатие клавиши Enter?
Использовал вариант с Key.getCode() - неполучилось.
в хелпе есть работающий пример
искать - по Key.addListener()
Ну повешал я Listener, теперь Enter у меня ловится отовсюду, а не из моего поля...
Связать можно с TextField его?
а условие в listener поставить по проверке фокуса на текстфилде не судьба?
Так...
Почему-то через объект TextField нельзя узнать в фокусе он или нет (если не гемороиться с onSetFocus и onKillFocus, меняя булиновую переменную).
Используя же Selection.GetFocus(), возвращающую указатель на объект с фокусом (напр. _level0.instField) и сравнивая его с указателем на сам объект (_level0.instField) не получается. Т.е. Selection.GetFocus() == this возвращает false, где this как раз и есть instField.
Так как узнать в фокусе TextField или нет (про RTFM ни слова :) )
так, я что - фокусник, и у меня одного получается?
пример из хелпа:
var focus_ta:mx.controls.TextArea;
my_mc.onRelease = function() {};
my_btn.onRelease = function() {};
var keyListener:Object = new Object();
keyListener.onKeyDown = function() {
if (Key.isDown(Key.SPACE)) {
trace(Selection.getFocus()+newline+tex.text);
}
};
Key.addListener(keyListener);
на сцене создаем input text field с именем tex
нажимаем пробем - трейсим null
кликаем по текстфилду, ставя фокус - нажимаем пробел еще раз - трейсим "_level0.tex"
что и требовалось доказать
(про RTFM ни слова :) )
Промолчу
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.