Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Обработать нажатие клавиши Enter (http://www.flasher.ru/forum/showthread.php?t=75723)

cassius 18.02.2006 07:33

Обработать нажатие клавиши Enter
 
Обрабатываю событие onChanged объекта TextField.
Каким образом я могу зафиксировать в нем нажатие клавиши Enter?
Использовал вариант с Key.getCode() - неполучилось.

Король 18.02.2006 07:38

в хелпе есть работающий пример
искать - по Key.addListener()

cassius 18.02.2006 07:54

Ну повешал я Listener, теперь Enter у меня ловится отовсюду, а не из моего поля...
Связать можно с TextField его?

Король 18.02.2006 08:24

а условие в listener поставить по проверке фокуса на текстфилде не судьба?

cassius 18.02.2006 09:15

Так...
Почему-то через объект TextField нельзя узнать в фокусе он или нет (если не гемороиться с onSetFocus и onKillFocus, меняя булиновую переменную).

Используя же Selection.GetFocus(), возвращающую указатель на объект с фокусом (напр. _level0.instField) и сравнивая его с указателем на сам объект (_level0.instField) не получается. Т.е. Selection.GetFocus() == this возвращает false, где this как раз и есть instField.

Так как узнать в фокусе TextField или нет (про RTFM ни слова :) )

Король 18.02.2006 09:49

так, я что - фокусник, и у меня одного получается?
пример из хелпа:
Код:

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"
что и требовалось доказать

Antares 18.02.2006 11:56

Цитата:

Сообщение от cassius
(про RTFM ни слова :) )

Промолчу


Часовой пояс GMT +4, время: 06:35.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.