Справочник по ActionScript® 3.0 для платформы Adobe® Flash®
Домашняя страница  |  Скрыть список пакетов и классов |  Пакеты  |  Классы  |  Что нового  |  Указатель  |  Приложения  |  Почему по-английски?
Фильтры: Получение данных с сервера...
Получение данных с сервера...
flash.events 

KeyboardEvent  - AS3

Пакетflash.events
Классpublic class KeyboardEvent
НаследованиеKeyboardEvent Inheritance Event Inheritance Object

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Идентификатор объекта KeyboardEvent, отправляемого в ответ на ввод пользователем данных с клавиатуры. Существует два типа событий клавиатуры: KeyboardEvent.KEY_DOWN и KeyboardEvent.KEY_UP

Так как соответствие клавиш определенным символам варьируется в зависимости от устройства и операционной системы, для обработки ввода символов необходимо использовать тип события TextEvent.

Чтобы прослушивать события клавиш в глобальном масштабе, необходимо добавить прослушиватель события к объекту Stage для фазы захвата и для фаз цели и восходящей цепочки.

Посмотреть примеры

Связанные элементы API



Общедоступные свойства
 СвойствоОпределено
  altKey : Boolean
В Windows указывает на то, активирована клавиша Alt (true) или нет (false). В Mac OS указывает на то, активирована ли клавиша Option.
KeyboardEvent
 Inheritedbubbles : Boolean
[только для чтения] Определяет, является ли событие событием восходящей цепочки.
Event
 Inheritedcancelable : Boolean
[только для чтения] Указывает, можно ли предотвратить поведение, связанное с событием.
Event
  charCode : uint
Содержит значение кода символа для нажатой или отпущенной клавиши.
KeyboardEvent
  commandKey : Boolean
Показывает активность клавиши Command: true — активна, false — неактивна.
KeyboardEvent
 Inheritedconstructor : Object
Ссылка на объект класса или функцию конструктора для данного экземпляра объекта.
Object
  controlKey : Boolean
Показывает активность клавиши Control: true — активна, false — неактивна.
KeyboardEvent
  ctrlKey : Boolean
В Windows и Linux указывает на то, активирована ли клавиша Ctrl (true) или нет (false). В Mac OS указывает на то, активирована ли клавиша Ctrl или Command.
KeyboardEvent
 InheritedcurrentTarget : Object
[только для чтения] Объект, активно обрабатывающий объект Event с помощью прослушивателя событий.
Event
 InheritedeventPhase : uint
[только для чтения] Текущая фаза в потоке событий.
Event
  keyCode : uint
Значение кода клавиши для нажатой или отпущенной клавиши.
KeyboardEvent
  keyLocation : uint
Указывает расположение клавиши на клавиатуре.
KeyboardEvent
  shiftKey : Boolean
Показывает, активирован ли модификатор клавиши Shift: true — активирован, false — не активирован.
KeyboardEvent
 Inheritedtarget : Object
[только для чтения] Целевой объект события.
Event
 Inheritedtype : String
[только для чтения] Тип события.
Event
Общедоступные методы
 МетодОпределено
  
KeyboardEvent(type:String, bubbles:Boolean = true, cancelable:Boolean = false, charCodeValue:uint = 0, keyCodeValue:uint = 0, keyLocationValue:uint = 0, ctrlKeyValue:Boolean = false, altKeyValue:Boolean = false, shiftKeyValue:Boolean = false, controlKeyValue:Boolean = false, commandKeyValue:Boolean = false)
Создает объект Event, содержащий данные о событиях клавиатуры.
KeyboardEvent
  
[переопределить] Создает копию объекта KeyboardEvent и задает значение каждого свойства, совпадающее с оригиналом.
KeyboardEvent
 Inherited
formatToString(className:String, ... arguments):String
Служебная функция для реализации метода toString() в пользовательских классах ActionScript 3.0 Event.
Event
 Inherited
Показывает, определено ли заданное свойство для объекта.
Object
 Inherited
Проверяет, выполнялся ли для события вызова метода preventDefault().
Event
 Inherited
Показывает, есть ли экземпляр класса Object в цепи прототипов объекта, заданного в качестве параметра.
Object
 Inherited
Отменяет поведение по умолчанию для события, если такое поведение можно отменить.
Event
 Inherited
Показывает наличие заданного свойства и его перечисляемость.
Object
 Inherited
Задает доступность динамического свойства для операций цикла.
Object
 Inherited
Отменяет обработку прослушивателей событий в текущем узле, а также во всех узлах, которые следуют в потоке событий за текущим узлом.
Event
 Inherited
Отменяет обработку прослушивателей событий в узлах, которые следуют в потоке событий за текущим узлом.
Event
 Inherited
Возвращает строковое представление этого объекта, отформатированного в соответствии со стандартами, принятыми для данной локали.
Object
  
[переопределить] Возвращает строку, содержащую все свойства объекта KeyboardEvent.
KeyboardEvent
  
Указывает на то, что необходимо выполнить визуализацию после обработки данного события, если список отображения был изменен.
KeyboardEvent
 Inherited
Возвращает элементарное значение заданного объекта.
Object
Общедоступные константы
 КонстантаОпределено
  KEY_DOWN : String = "keyDown"
[статические] Константа KeyboardEvent.KEY_DOWN определяет значение свойства type объекта события keyDown.
KeyboardEvent
  KEY_UP : String = "keyUp"
[статические] Константа KeyboardEvent.KEY_UP определяет значение свойства type объекта события keyUp.
KeyboardEvent
Сведения о свойстве

altKey

свойство
altKey:Boolean

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9

В Windows указывает на то, активирована клавиша Alt (true) или нет (false). В Mac OS указывает на то, активирована ли клавиша Option.



Реализация
    public function get altKey():Boolean
    public function set altKey(value:Boolean):void

charCode

свойство 
charCode:uint

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Содержит значение кода символа для нажатой или отпущенной клавиши. Значения кодов символов являются значениями английской раскладки клавиатуры. Например, если нажать клавиши «Shift+3», то charCode соответствует # на японской клавиатуре, а если нажать клавиши «Shift+2», то charCode — @ на немецкой клавиатуре (не "), как на английской клавиатуре.

Примечание. Если работает редактор метода ввода (IME), charCode не сообщает точные коды символов.



Реализация
    public function get charCode():uint
    public function set charCode(value:uint):void

commandKey

свойство 
commandKey:Boolean

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Lite 4

Показывает активность клавиши Command: true — активна, false — неактивна. Поддерживается только для Mac OS. В Mac OS свойство commandKey имеет то же значение, что и свойство ctrlKey.



Реализация
    public function get commandKey():Boolean
    public function set commandKey(value:Boolean):void

controlKey

свойство 
controlKey:Boolean

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Lite 4

Показывает активность клавиши Control: true — активна, false — неактивна. В Windows и Linux это свойство также имеет значение true, если клавиша Ctrl активна.



Реализация
    public function get controlKey():Boolean
    public function set controlKey(value:Boolean):void

ctrlKey

свойство 
ctrlKey:Boolean

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9

В Windows и Linux указывает на то, активирована ли клавиша Ctrl (true) или нет (false). В Mac OS указывает на то, активирована ли клавиша Ctrl или Command.



Реализация
    public function get ctrlKey():Boolean
    public function set ctrlKey(value:Boolean):void

keyCode

свойство 
keyCode:uint

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Значение кода клавиши для нажатой или отпущенной клавиши.

Примечание. Если работает редактор метода ввода (IME), charCode не сообщает точные коды клавиш.



Реализация
    public function get keyCode():uint
    public function set keyCode(value:uint):void

Связанные элементы API

keyLocation

свойство 
keyLocation:uint

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Указывает расположение клавиши на клавиатуре. Это целесообразно для дифференциации клавиш, встречающихся на клавиатуре несколько раз. Например, можно дифференцировать левую и правую клавиши Shift по значению этого свойства: KeyLocation.LEFT — левая, а KeyLocation.RIGHT — правая. Другой пример — дифференциация клавиш с цифрами, нажатых на стандартной клавиатуре (KeyLocation.STANDARD) и на числовой панели (KeyLocation.NUM_PAD).



Реализация
    public function get keyLocation():uint
    public function set keyLocation(value:uint):void

shiftKey

свойство 
shiftKey:Boolean

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9

Показывает, активирован ли модификатор клавиши Shift: true – активирован, false – не активирован.



Реализация
    public function get shiftKey():Boolean
    public function set shiftKey(value:Boolean):void
Сведения о конструкторе

KeyboardEvent

()Конструктор
public function KeyboardEvent(type:String, bubbles:Boolean = true, cancelable:Boolean = false, charCodeValue:uint = 0, keyCodeValue:uint = 0, keyLocationValue:uint = 0, ctrlKeyValue:Boolean = false, altKeyValue:Boolean = false, shiftKeyValue:Boolean = false, controlKeyValue:Boolean = false, commandKeyValue:Boolean = false)

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Создает объект Event, содержащий данные о событиях клавиатуры. Объекты Event передаются прослушивателям событий в качестве параметров.

Параметры
type:String — Тип события. Возможные значения: KeyboardEvent.KEY_DOWN и KeyboardEvent.KEY_UP
 
bubbles:Boolean (default = true) — Определяет, участвует ли объект Event в фазе восходящей цепочки потока событий.
 
cancelable:Boolean (default = false) — Определяет, можно ли отменить объект Event.
 
charCodeValue:uint (default = 0) — Значение кода символа для нажатой или отпущенной клавиши. Возвращаемые значения кодов символов являются значениями англоязычной раскладки клавиатуры. Например, если нажать «Shift+3», метод Keyboard.charCode() возвращает символ «#» на японской или немецкой раскладке клавиатуры так же, как на английской.
 
keyCodeValue:uint (default = 0) — Значение кода клавиши для нажатой или отпущенной клавиши.
 
keyLocationValue:uint (default = 0) — Расположение клавиши на клавиатуре.
 
ctrlKeyValue:Boolean (default = false) — В Windows указывает на то, активирована ли клавиша Ctrl. В Mac указывает на то, активирована ли клавиша Ctrl или Command.
 
altKeyValue:Boolean (default = false) — Указывает, активирован ли модификатор клавиши Alt (только для Windows).
 
shiftKeyValue:Boolean (default = false) — Указывает, активирован ли модификатор клавиши Shift.
 
controlKeyValue:Boolean (default = false) — Указывает, активирована ли клавиша Control в Mac или клавиши Control или Ctrl в Windows или Linux.
 
commandKeyValue:Boolean (default = false) — Указывает, активирована ли клавиша Command (только для Mac).

Связанные элементы API

Сведения о методе

clone

()метод
override public function clone():Event

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Создает копию объекта KeyboardEvent и задает значение каждого свойства, совпадающее с оригиналом.

Возвращает
Event — Новый объект KeyboardEvent, значения свойств которого соответствуют значениям оригинала.

toString

()метод 
override public function toString():String

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Возвращает строку, содержащую все свойства объекта KeyboardEvent. Строка имеет следующий формат:

[KeyboardEvent type=value bubbles=value cancelable=value ... shiftKey=value]

Возвращает
String — Строка, содержащая все свойства объекта KeyboardEvent.

updateAfterEvent

()метод 
public function updateAfterEvent():void

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9

Указывает на то, что необходимо выполнить визуализацию после обработки данного события, если список отображения был изменен.

Сведения о константе

KEY_DOWN

Константа
public static const KEY_DOWN:String = "keyDown"

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Константа KeyboardEvent.KEY_DOWN определяет значение свойства type объекта события keyDown.

Это событие имеет следующие свойства:

СвойствоЗначение
bubblestrue
cancelabletrue в AIR, false в Flash Player. Отмена этого события в AIR предотвращает ввод этого символа в текстовое поле.
charCodeЗначение кода символа для нажатой или отпущенной клавиши.
commandKeytrue в Mac, если клавиша Command активна. В противном случае false
controlKeytrue в Windows и Linux, если клавиша Ctrl активна. true в Mac, если клавиша Control активна. В противном случае false
ctrlKeytrue в Windows и Linux, если клавиша Ctrl активна. true в Mac, если клавиша Ctrl или Command активна. В противном случае false.
currentTargetОбъект, активно обрабатывающий объект Event с помощью прослушивателя событий.
keyCodeЗначение кода клавиши для нажатой или отпущенной клавиши.
keyLocationРасположение клавиши на клавиатуре.
shiftKeytrue, если клавиша Shift активна; иначе — false.
targetЭкземпляр InteractiveObject, находящийся в фокусе. Свойство target не всегда является объектом из списка отображения, для которого зарегистрирован прослушиватель событий. Используйте свойство currentTarget для обращения к объекту в списке отображения, обрабатывающему событие в данный момент.

Связанные элементы API

KEY_UP

Константа 
public static const KEY_UP:String = "keyUp"

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Константа KeyboardEvent.KEY_UP определяет значение свойства type объекта события keyUp.

Это событие имеет следующие свойства:

СвойствоЗначение
bubblestrue
cancelablefalse; поведение по умолчанию, подлежащее отмене, не определено.
charCodeСодержит значение кода символа для нажатой или отпущенной клавиши.
commandKeytrue в Mac, если клавиша Command активна. В противном случае false
controlKeytrue в Windows и Linux, если клавиша Ctrl активна. true в Mac, если клавиша Control активна. В противном случае false
ctrlKeytrue в Windows, если клавиша Ctrl активна. true в Mac, если клавиша Ctrl или Command активна. В противном случае false.
currentTargetОбъект, активно обрабатывающий объект Event с помощью прослушивателя событий.
keyCodeЗначение кода клавиши для нажатой или отпущенной клавиши.
keyLocationРасположение клавиши на клавиатуре.
shiftKeytrue, если клавиша Shift активна; иначе — false.
targetЭкземпляр InteractiveObject, находящийся в фокусе. Свойство target не всегда является объектом из списка отображения, для которого зарегистрирован прослушиватель событий. Используйте свойство currentTarget для обращения к объекту в списке отображения, обрабатывающему событие в данный момент.

Связанные элементы API

KeyboardEventExample.as

В следующем примере используется класс KeyboardEventExample для демонстрации событий клавиатуры и их функций прослушивателей. Для этого выполняются следующие задачи:
  1. Создается новый экземпляр Sprite с именем child.
  2. Объявляются свойства для последующего использования при задании фонового цвета и размера квадрата.
  3. С помощью методов объекта Sprite рисуется голубой квадрат, отображаемый в рабочей области в точке по умолчанию с координатами (0,0), путем вызова метода addChild().
  4. Добавляется один прослушиватель событий мыши и два прослушивателя событий клавиатуры:
    • click/clickHandler отправляется при щелчке по квадрату с целью перевода фокуса на спрайт child, чтобы он мог прослушивать события клавиатуры;
    • keyDown/keyDownHandler отправляется при нажатии любой клавиши; Метод подписчика печатает сведения о событии с помощью оператора trace();
    • keyUp/keyUpHandler отправляется, когда клавиша отпускается.

При тестировании этого примера сначала необходимо щелкнуть по квадрату, чтобы заработали события клавиатуры.

Также, если используется команда «Тестировать ролик» в программе разработки Flash, на некоторые клавиши может реагировать интерфейс программы, а не прослушиватели событий, добавленные для дочернего спрайта.

package {
    import flash.display.Sprite;
    import flash.display.DisplayObject;
    import flash.events.*;

    public class KeyboardEventExample extends Sprite {
        private var child:Sprite = new Sprite();
        private var bgColor:uint = 0x00CCFF;
        private var size:uint = 80;

        public function KeyboardEventExample() {
            child.graphics.beginFill(bgColor);
            child.graphics.drawRect(0, 0, size, size);
            child.graphics.endFill();
            addChild(child);
            child.addEventListener(MouseEvent.CLICK, clickHandler);
            child.addEventListener(KeyboardEvent.KEY_DOWN, keyDownHandler);
            child.addEventListener(KeyboardEvent.KEY_UP, keyUpHandler);
            
        }

        private function clickHandler(event:MouseEvent):void {
            stage.focus = child;
        }

        private function keyDownHandler(event:KeyboardEvent):void {
            trace("keyDownHandler: " + event.keyCode);
            trace("ctrlKey: " + event.ctrlKey);
            trace("keyLocation: " + event.keyLocation);
            trace("shiftKey: " + event.shiftKey);
            trace("altKey: " + event.altKey);

        }

        private function keyUpHandler(event:KeyboardEvent):void {
            trace("keyUpHandler: " + event.keyCode);
        }
        
        
    }
}




[ X ]Почему по-английски?
Содержимое Справочника ActionScript 3.0 отображается на английском языке

Не все части Справочника ActionScript 3.0 переводятся на все языки. Если какой-то текстовый элемент не переведен, он отображается на английском языке. Например, компонент ga.controls.HelpBox не переведен ни на один из языков. Это значит, что в русской версии справки компонент ga.controls.HelpBox будет отображаться на английском языке.