PDA

Просмотр полной версии : Снять фокусировку с текстовых полей


MelDiz
22.07.2006, 05:44
Подскажите плз как можно снять выделение с текстового поля.
Поясню ситуацию: Есть два текстовых поля(в которых чего-то происходит при onSetFocus и onKillFocus) и кнонка, которая обрабатывает текст в текст.полях, после выделения и ввода текста в т.поле пользователь нажимает на кнопку, а после нажатия последнее редактируемое т.п. снова становится выделенным т.е. в нем находится курсор.
Проблема: Как снять фокус с текстовых полей?

Спасибо

Fr@ddy
22.07.2006, 11:09
TextPole.setSelected(0,TextPole.getCount(),false);

7thsky™
22.07.2006, 12:05
TextPole.setSelected(0,TextPole.getCount(),false);
Ты это на каком языке написал?

Fr@ddy
22.07.2006, 13:45
Ты это на каком языке написал?
Ну, блин, "TextPole" = имя текстового поля.

iNils
22.07.2006, 13:56
Ну getCount() что там делает?

7thsky™
22.07.2006, 14:40
А что у TextField'а есть setSelected?

насколько помню что во флэше, это таким образом делается

Selection.setFocus (txtInstanceName);
Selection.setSelection(startIndex:Number, endIndex:Number);

iNils
22.07.2006, 15:20
Хотя автор хотел совсем другое.
Проблема: Как снять фокус с текстовых полей?
Поэтому надо просто
Selection.setFocus(null);

Fr@ddy
22.07.2006, 15:42
Ну getCount() что там делает?
Через getCount() можно узнать чило символов в строке.
Можно и через length.

Fr@ddy
22.07.2006, 15:46
2 iNils 2 7thsky™
Я понял :) тут зависит от того, кто на какой вопрос отвечал.
Я на "как можно снять выделение с текстового поля?" т.е. уже выделенного поля.
Вы на "Как снять фокус с текстовых полей?" типа запретить фокус.
Посмотрим что автор хотел.:)

iNils
22.07.2006, 15:55
Через getCount() можно узнать чило символов в строке.
Можно и через length.
Я бы на твоем месте насторожился, если бы мне два человека, отнюдь не новички во флеше, стали задавать такие вопросы. Посмотри
this.createTextField ("txt", 0, 0, 0, 100, 20);
txt.text = "длина поля";
trace (txt.length);
trace (txt.getCount ());

Fr@ddy
22.07.2006, 17:09
Хм... наверное, я ступил...
Просто, если сравнить:
txt.setSelected(0,txt.getCount(),false); и txt.setSelected(0,txt.length,false);
то результат тот же. Тогда пускай этот использует:
txt.setSelected(0,txt.length, false);

iNils
22.07.2006, 17:21
И опять ты не прав. Метод setSelected есть только у класса TextSnapshot, но он работает со статичными полями.

Fr@ddy
22.07.2006, 17:37
Упс...:D. Всё, понял.

wvxvw
24.07.2006, 20:59
Ничего не понял... после нажатия на кнопку поле в любом случае потеряет фокус... зачем его убирать еще как-то?
Мб нужно _вернуть_ фокус последнему полю в котором фокус был до клика по кнопке? =\