![]() |
Странное поведение поля, получившего фокус программно.
Программно устанавливаю фокус на текстовое поле ввода, в котором уже есть текст по умолчанию.
1. Если использую для установки этот самый свой код, то поле как будто фокус получает (об этом свидетельствует Selection.getFocus(), вызванный для проверки), текст подсвечен, но: подсветка не черным цветом как обычно, а серым, и отсутствует возможность редактировать, с клавиатуры ввод туда недоступен. 2. Если же устанавливаю туда фокус тоже программно, но просто отдельно с кнопки, с помощью Selection.setFocus(String(targetTextField)) спустя некоторое время после выполнения основного кода, то все нормально - подсветка черная, и символы с клавиатуры сразу вводятся. Вопрос - что это и при каких обстоятельствах такое может быть? Ведь в первом случае проверка выясняет, что поле фокус получило. |
mooncar а когда у тебя поле появляется на сцене? сразу же, или после некоторых действий?
|
На сцене поле есть сразу.
Последовательность кода такая: 1. Поле ввода есть, но его _visible = false; 2. Задается tabIndex по полям. 3. Вызыв ф-ии редактирования при клике на поле вывода в другом месте. Ф-я присваивает полю ввода текст и "проявляет его" , делая _visible = true; 4. На поле ввода устанавливается фокус. Происходит то, что я описал. Если установить фокус из другого места спустя время, все ок. |
mooncar сталкивался именно с такой же проблемой, если поле добавить на сцену не сразу или папазжее назначить фокус то все ок, а если сразу то ничего..попробуй мот попозже его закинуть?..
|
Спасибо, код основной перепашу, кажется чувствую, где "засада".
Интересно было именно - что означает серая подсветка и отсутствие ввода при в общем-то полученном фокусе. |
| Часовой пояс GMT +4, время: 19:13. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.