Для того чтобы дать какому-либо текстовому блоку (а также кнопке или клипу) фокус ввода, нужно вызвать метод set Focus. В качестве единственного параметра этому методу передается путь в строковом виде:

Selection.setFocus("_root.txtName");

Selection.setFocus("_root.btnOK"); Чтобы снять фокус ввода со всех элементов управления, достаточно передать методу setFocus в качестве параметра значение null.

С помощью объекта selection мы можем получить позицию текстового курсора в поле ввода. Для этого достаточно вызвать не принимающий параметров метод get Caret index, который вернет нам номер символа, на котором стоит курсор. (Не стоит забывать, что нумерация символов начинается с нуля.) Если же ни одно поле ввода не имеет фокуса, возвращается значение - 1.

Методы getBeginindex и getEndindex возвращают номера соответственно начального и конечного символа выделенного в текстовом блоке фрагмента текста. Если ничего не выделено, также возвращается значение - 1.

Можно выделить нужный фрагмент текста, воспользовавшись методом setseiection. Первый параметр этого метода должен иметь значение, равное номеру первого символа выделяемого фрагмента, а второй параметр - значение, равное номеру последнего символа. Вот так:

Selection.setSelection(10, 30); Чтобы просто поставить текстовый курсор в требуемую позицию, нужно передать методу setseiection номер нужного символа и в первом, и во втором параметре:

Selection.setSelection(10, 10); Объект selection поддерживает одно-единственное событие onSetFocus, возникающее при перемещении фокуса ввода. Обработка этого события возможна только с помощью перехватчика. Например:

myListener = new Object();

myListener.onSetFocus = fOnSetFocus;

Selection.addListener(myListener); Это пример создания и привязки перехватчика к объекту selection. Функция fOnSetFocus выполняет собственно обработку события onSetFocus; определение этой функции было опущено.

Обработка нажатий клавиш клавиатуры

Для обработки нажатия клавиш клавиатуры служит объект Key. Его единственный экземпляр, также носящий имя Key, создается самим Flash.

Свойства и методы объекта Key

Два важнейших метода, которые обязательно понадобятся нам для обработки нажатий клавиш, - это методы getAscii и getcode. Первый метод возвращает код символа ASCII, который присвоен нажатой клавише. Второй метод возвращает так называемый виртуальный код нажатой клавиши - низкоуровневый код, позволяющий узнать, какая клавиша на клавиатуре была нажата. Оба эти метода не принимают параметров.

Вот пример выражений вызова этих методов:

codel = Key.getAscii() ; code2 = Key.getCode(); Код символа ASCII зависит от текущей кодировки. Коды символов кодировки Windows 1251 приведены в интерактивной справке Flash; там же приведены и виртуальные коды клавиш.

Еще один полезный метод объекта Key - метод isDown. Он принимает единственный параметр - виртуальный код клавиши - и возвращает значение true, если эта клавиша нажата. Например:

if (Key.isDown(Key.ENTER))    { . . . }

Приведенное выше выражение проверяет, была ли нажата клавиша <Enter>.


⇐ вернуться назад | | далее ⇒