ActionScript® 3.0 — dokumentacja dla platformy Adobe® Flash®
Strona główna  |  Ukryj listę pakietów i klas |  Pakiety  |  Klasy  |  Nowości  |  Indeks  |  Dodatki  |  Dlaczego język angielski?
Filtry: Pobieranie danych z serwera...
Pobieranie danych z serwera...
flash.events 

KeyboardEvent  - AS3

Pakietflash.events
Klasapublic class KeyboardEvent
DziedziczenieKeyboardEvent Inheritance Event Inheritance Object

Wersja języka: ActionScript 3.0
Wersje środowiska wykonawczego: AIR 1.0, Flash Player 9, Flash Lite 4

Obiekt zdarzenia KeyboardEvent jest wywoływany w odpowiedzi na czynności wykonywane przez użytkownika na klawiaturze. Istnieją dwa typy zdarzeń dotyczących klawiatury: KeyboardEvent.KEY_DOWN i KeyboardEvent.KEY_UP

Ponieważ odwzorowania między klawiszami a konkretnymi znakami są różne w różnych urządzeniach i systemach operacyjnych, do przetwarzania wejściowych danych znakowych należy używać zdarzenia typu TextEvent.

Aby globalnie wykrywać zdarzenia dotyczące klawiszy, należy w obiekcie Stage wykrywać obiekty w fazie przechwytywania i miejsca docelowego lub propagacji.

Wyświetl przykłady

Powiązane elementy interfejsu API



Właściwości publiczne
 WłaściwośćZdefiniowane przez
  altKey : Boolean
W systemach Windows określa, czy klawisz Alt jest aktywny (true), czy nieaktywny (false); w systemach Mac OS określa, czy jest aktywny klawisz Option.
KeyboardEvent
 Inheritedbubbles : Boolean
[tylko do odczytu] Określa, czy zdarzenie może przechodzić fazę propagacji.
Event
 Inheritedcancelable : Boolean
[tylko do odczytu] Wskazuje, czy można uniemożliwić operacje skojarzone ze zdarzeniem.
Event
  charCode : uint
Zawiera kod znaku przypisanego do klawisza, który wciśnięto lub zwolniono.
KeyboardEvent
  commandKey : Boolean
Określa, czy klawisz Command jest aktywny (true), czy nieaktywny (false).
KeyboardEvent
 Inheritedconstructor : Object
Odwołanie do obiektu klasy lub funkcji konstruktora, dotyczące danej instancji obiektu.
Object
  controlKey : Boolean
Określa, czy klawisz Control jest aktywny (true), czy nie (false).
KeyboardEvent
  ctrlKey : Boolean
W systemach Windows i Linux określa, czy klawisz Ctrl jest aktywny (true), czy nieaktywny (false); w systemach Mac OS określa, czy jest aktywny klawisz Ctrl albo Command.
KeyboardEvent
 InheritedcurrentTarget : Object
[tylko do odczytu] Obiekt przetwarzający aktywnie obiekt Event za pomocą detektora zdarzeń.
Event
 InheritedeventPhase : uint
[tylko do odczytu] Bieżąca faza przepływu zdarzeń.
Event
  keyCode : uint
Kod znaku przypisanego do klawisza, który wciśnięto lub zwolniono.
KeyboardEvent
  keyLocation : uint
Określa położenie klawisza na klawiaturze.
KeyboardEvent
  shiftKey : Boolean
Określa, czy klawisz modyfikujący Shift jest aktywny (true), czy nieaktywny (false).
KeyboardEvent
 Inheritedtarget : Object
[tylko do odczytu] Miejsce docelowe zdarzenia.
Event
 Inheritedtype : String
[tylko do odczytu] Typ zdarzenia.
Event
Metody publiczne
 MetodaZdefiniowane przez
  
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)
Tworzy obiekt Event, który zawiera określone informacje o zdarzeniach dotyczących klawiatury.
KeyboardEvent
  
[przesłanianie] Tworzy kopię obiektu KeyboardEvent i ustawia wartości poszczególnych właściwości zgodnie z właściwościami oryginału.
KeyboardEvent
 Inherited
formatToString(className:String, ... arguments):String
Funkcja narzędziowa umożliwiająca implementację metody toString() w niestandardowych klasach Event w języku ActionScript 3.0.
Event
 Inherited
Wskazuje, czy dla obiektu zdefiniowano określoną właściwość.
Object
 Inherited
Sprawdza, czy w odniesieniu do tego zdarzenia wywołano metodę preventDefault().
Event
 Inherited
Wskazuje, czy instancja klasy Object należy do łańcucha prototypów obiektu określonego jako parametr.
Object
 Inherited
Anuluje domyślne ustawienia zdarzenia, o ile zachowanie to może być anulowane.
Event
 Inherited
Wskazuje, czy określona właściwość istnieje i jest przeliczalna.
Object
 Inherited
Ustawia dostępność właściwości dynamicznej używanej w pętlach.
Object
 Inherited
Zapobiega przetwarzaniu wszelkich detektorów zdarzeń w węźle bieżącym i węzłach następujących po nim.
Event
 Inherited
Zapobiega przetwarzaniu wszelkich detektorów zdarzeń w węzłach następujących po węźle bieżącym w przepływie zdarzeń.
Event
 Inherited
Zwraca ciąg reprezentujący obiekt — sformatowany zgodnie z konwencjami właściwymi dla ustawień regionalnych.
Object
  
[przesłanianie] Zwraca ciąg znaków, który zawiera wszystkie właściwości obiektu KeyboardEvent.
KeyboardEvent
  
Określa, że po zakończeniu przetwarzania tego zdarzenia obraz powinien zostać zrenderowany, jeśli lista wyświetlania została zmodyfikowana.
KeyboardEvent
 Inherited
Zwraca pierwotną wartość dla określonego obiektu.
Object
Stałe publiczne
 StałaZdefiniowane przez
  KEY_DOWN : String = "keyDown"
[statyczny] Stała KeyboardEvent.KEY_DOWN definiuje wartość właściwości type obiektu zdarzenia keyDown.
KeyboardEvent
  KEY_UP : String = "keyUp"
[statyczny] Stała KeyboardEvent.KEY_UP definiuje wartość właściwości type obiektu zdarzenia keyUp.
KeyboardEvent
Szczegół właściwości

altKey

właściwość
altKey:Boolean

Wersja języka: ActionScript 3.0
Wersje środowiska wykonawczego: AIR 1.0, Flash Player 9

W systemach Windows określa, czy klawisz Alt jest aktywny (true), czy nieaktywny (false); w systemach Mac OS określa, czy jest aktywny klawisz Option.



Implementacja
    public function get altKey():Boolean
    public function set altKey(value:Boolean):void

charCode

właściwość 
charCode:uint

Wersja języka: ActionScript 3.0
Wersje środowiska wykonawczego: AIR 1.0, Flash Player 9, Flash Lite 4

Zawiera kod znaku przypisanego do klawisza, który wciśnięto lub zwolniono. Zwracane są zawsze kody znaków dla klawiatury angielskiej. Na przykład naciśnięcie klawiszy Shift+3 powoduje ustawienie wartości charCode równej # na klawiaturze japońskiej, a klawiszy Shift+2 — wartości charCode. równej @ na klawiaturze niemieckiej (zamiast "), podobnie jak na klawiaturze angielskiej.

Uwaga: Gdy działa edytor IME (Input Method Editor), kody znaków przekazywane przez właściwość charCode są nieprawidłowe.



Implementacja
    public function get charCode():uint
    public function set charCode(value:uint):void

commandKey

właściwość 
commandKey:Boolean

Wersja języka: ActionScript 3.0
Wersje środowiska wykonawczego: AIR 1.0, Flash Lite 4

Określa, czy klawisz Command jest aktywny (true), czy nieaktywny (false). Obsługiwana tylko w systemach Mac OS. W systemach Mac OS właściwość commandKey ma tę samą wartość, co właściwość ctrlKey.



Implementacja
    public function get commandKey():Boolean
    public function set commandKey(value:Boolean):void

controlKey

właściwość 
controlKey:Boolean

Wersja języka: ActionScript 3.0
Wersje środowiska wykonawczego: AIR 1.0, Flash Lite 4

Określa, czy klawisz Control jest aktywny (true), czy nie (false). W systemach Windows i Linux warunek ten jest spełniony także wtedy, gdy aktywny jest klawisz Ctrl.



Implementacja
    public function get controlKey():Boolean
    public function set controlKey(value:Boolean):void

ctrlKey

właściwość 
ctrlKey:Boolean

Wersja języka: ActionScript 3.0
Wersje środowiska wykonawczego: AIR 1.0, Flash Player 9

W systemach Windows i Linux określa, czy klawisz Ctrl jest aktywny (true), czy nieaktywny (false); w systemach Mac OS określa, czy jest aktywny klawisz Ctrl albo Command.



Implementacja
    public function get ctrlKey():Boolean
    public function set ctrlKey(value:Boolean):void

keyCode

właściwość 
keyCode:uint

Wersja języka: ActionScript 3.0
Wersje środowiska wykonawczego: AIR 1.0, Flash Player 9, Flash Lite 4

Kod znaku przypisanego do klawisza, który wciśnięto lub zwolniono.

Uwaga: Gdy działa edytor IME (Input Method Editor), kody klawiszy przekazywane przez właściwość keyCode są nieprawidłowe.



Implementacja
    public function get keyCode():uint
    public function set keyCode(value:uint):void

Powiązane elementy interfejsu API

keyLocation

właściwość 
keyLocation:uint

Wersja języka: ActionScript 3.0
Wersje środowiska wykonawczego: AIR 1.0, Flash Player 9, Flash Lite 4

Określa położenie klawisza na klawiaturze. Jest to przydatne do rozróżniania klawiszy, które są powielone na klawiaturze. Na podstawie wartości tej właściwości można na przykład rozróżnić lewy i prawy klawisz Shift: KeyLocation.LEFT oznacza lewy, a KeyLocation.RIGHT oznacza prawy. Inny przykład to odróżnienie klawiszy cyfr na standardowej klawiaturze (KeyLocation.STANDARD) od klawiszy na klawiaturze numerycznej (KeyLocation.NUM_PAD).



Implementacja
    public function get keyLocation():uint
    public function set keyLocation(value:uint):void

shiftKey

właściwość 
shiftKey:Boolean

Wersja języka: ActionScript 3.0
Wersje środowiska wykonawczego: AIR 1.0, Flash Player 9

Określa, czy klawisz modyfikujący Shift jest aktywny (true), czy nieaktywny (false).



Implementacja
    public function get shiftKey():Boolean
    public function set shiftKey(value:Boolean):void
Konstruktor Szczegół

KeyboardEvent

()Konstruktor
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)

Wersja języka: ActionScript 3.0
Wersje środowiska wykonawczego: AIR 1.0, Flash Player 9, Flash Lite 4

Tworzy obiekt Event, który zawiera określone informacje o zdarzeniach dotyczących klawiatury. Obiekty Event są przekazywane jako parametry do detektorów zdarzeń.

Parametry
type:String — Typ zdarzenia. Możliwe wartości to: KeyboardEvent.KEY_DOWN i KeyboardEvent.KEY_UP
 
bubbles:Boolean (default = true) — Określa, czy obiekt Event uczestniczy w etapie propagacji przepływu zdarzeń.
 
cancelable:Boolean (default = false) — Określa, czy obiekt Event może zostać anulowany.
 
charCodeValue:uint (default = 0) — Kod znaku naciśniętego lub zwolnionego klawisza. Zwracane są zawsze kody znaków dla klawiatury angielskiej. Na przykład naciśnięcie kombinacji klawiszy Shift+3 na klawiaturze japońskiej lub niemieckiej powoduje, że właściwość Keyboard.charCode() zwraca znak #, tak samo jak na klawiaturze angielskiej.
 
keyCodeValue:uint (default = 0) — Kod znaku przypisanego do klawisza, który wciśnięto lub zwolniono.
 
keyLocationValue:uint (default = 0) — Położenie klawisza na klawiaturze.
 
ctrlKeyValue:Boolean (default = false) — W systemie Windows określa, czy klawisz Ctrl jest aktywny. Na komputerze Mac określa, czy aktywny jest klawisz Ctrl lub Command.
 
altKeyValue:Boolean (default = false) — Określa, czy jest aktywny klawisz modyfikujący Alt (tylko w systemach Windows).
 
shiftKeyValue:Boolean (default = false) — Określa, czy jest aktywny klawisz modyfikujący Shift.
 
controlKeyValue:Boolean (default = false) — Określa, czy klawisz Control jest aktywny w systemie Mac lub czy klawisz Control bądź Ctrl jest aktywny w systemie Windows lub Linux.
 
commandKeyValue:Boolean (default = false) — Określa, czy klawisz Command jest aktywny (tylko w systemach Mac).

Powiązane elementy interfejsu API

Szczegół metody

clone

()metoda
override public function clone():Event

Wersja języka: ActionScript 3.0
Wersje środowiska wykonawczego: AIR 1.0, Flash Player 9, Flash Lite 4

Tworzy kopię obiektu KeyboardEvent i ustawia wartości poszczególnych właściwości zgodnie z właściwościami oryginału.

Zwraca
Event — Nowy obiekt KeyboardEvent z wartościami właściwości zgodnymi z oryginałem.

toString

()metoda 
override public function toString():String

Wersja języka: ActionScript 3.0
Wersje środowiska wykonawczego: AIR 1.0, Flash Player 9, Flash Lite 4

Zwraca ciąg znaków, który zawiera wszystkie właściwości obiektu KeyboardEvent. Format ciągu znaków jest następujący:

[KeyboardEvent type=wartość bubbles=wartość cancelable=wartość ... shiftKey=wartość]

Zwraca
String — Ciąg znaków, który zawiera wszystkie właściwości obiektu KeyboardEvent.

updateAfterEvent

()metoda 
public function updateAfterEvent():void

Wersja języka: ActionScript 3.0
Wersje środowiska wykonawczego: AIR 1.0, Flash Player 9

Określa, że po zakończeniu przetwarzania tego zdarzenia obraz powinien być renderowany, jeśli lista wyświetlania została zmodyfikowana.

Szczegół stałej

KEY_DOWN

Stała
public static const KEY_DOWN:String = "keyDown"

Wersja języka: ActionScript 3.0
Wersje środowiska wykonawczego: AIR 1.0, Flash Player 9, Flash Lite 4

Stała ScreenMouseEvent.KEY_DOWN definiuje wartość właściwości type obiektu zdarzenia keyDown.

To zdarzenie ma następujące właściwości:

WłaściwośćWartość
bubblestrue
cancelabletrue w AIR, false w programie Flash Player; anulowanie zdarzenia w środowisku AIR zapobiega wprowadzeniu znaku do pola tekstowego.
charCodeKod znaku naciśniętego lub zwolnionego klawisza.
commandKeytrue w systemie Mac, jeśli klawisz Command jest aktywny. W przeciwnym razie false
controlKeytrue w systemach Windows lub Linux, jeśli klawisz Ctrl jest aktywny. true w systemie Mac, jeśli którykolwiek klawisz Control jest aktywny. W przeciwnym razie false
ctrlKeytrue w systemach Windows lub Linux, jeśli klawisz Ctrl jest aktywny. true w systemach Mac, jeśli aktywny jest klawisz Ctrl albo Command. W przeciwnym razie false.
currentTargetObiekt przetwarzający aktywnie obiekt Event za pomocą detektora zdarzeń.
keyCodeKod znaku przypisanego do klawisza, który wciśnięto lub zwolniono.
keyLocationPołożenie klawisza na klawiaturze.
shiftKeytrue, jeśli klawisz Shift jest aktywny; false, jeśli jest nieaktywny.
targetInstancja klasy InteractiveObject, która jest aktywna. Obiekt target nie zawsze jest obiektem na liście wyświetlania, która zarejestrowała detektor zdarzeń. Właściwość currentTarget umożliwia uzyskanie dostępu do obiektu na liście wyświetlania, który obecnie przetwarza zdarzenie.

Powiązane elementy interfejsu API

KEY_UP

Stała 
public static const KEY_UP:String = "keyUp"

Wersja języka: ActionScript 3.0
Wersje środowiska wykonawczego: AIR 1.0, Flash Player 9, Flash Lite 4

Stała ScreenMouseEvent.KEY_UP definiuje wartość właściwości type obiektu zdarzenia keyUp.

To zdarzenie ma następujące właściwości:

WłaściwośćWartość
bubblestrue
cancelablefalse; nie ma domyślnego zachowania, które można byłoby anulować.
charCodeZawiera kod znaku przypisanego do klawisza, który wciśnięto lub zwolniono.
commandKeytrue w systemie Mac, jeśli klawisz Command jest aktywny. W przeciwnym razie false
controlKeytrue w systemach Windows lub Linux, jeśli klawisz Ctrl jest aktywny. true w systemie Mac, jeśli którykolwiek klawisz Control jest aktywny. W przeciwnym razie false
ctrlKeytrue w systemach Windows, jeśli klawisz Ctrl jest aktywny. true w systemach Mac, jeśli aktywny jest klawisz Ctrl albo Command. W przeciwnym razie false.
currentTargetObiekt przetwarzający aktywnie obiekt Event za pomocą detektora zdarzeń.
keyCodeKod znaku przypisanego do klawisza, który wciśnięto lub zwolniono.
keyLocationPołożenie klawisza na klawiaturze.
shiftKeytrue, jeśli klawisz Shift jest aktywny; false, jeśli jest nieaktywny.
targetInstancja klasy InteractiveObject, która jest aktywna. Obiekt target nie zawsze jest obiektem na liście wyświetlania, która zarejestrowała detektor zdarzeń. Właściwość currentTarget umożliwia uzyskanie dostępu do obiektu na liście wyświetlania, który obecnie przetwarza zdarzenie.

Powiązane elementy interfejsu API

KeyboardEventExample.as

W poniższym przykładzie zastosowano klasę KeyboardEventExample w celu zademonstrowania zdarzeń związanych z klawiaturą i detektorów tych zdarzeń. Przykładowy kod realizuje następujące zadania:
  1. Tworzy nową instancję klasy Sprite o nazwie child.
  2. Deklaruje właściwości, które będą później używane do ustawienia koloru tła i rozmiaru kwadratu.
  3. Korzystając z metod obiektu Sprite, rysuje jasnoniebieski kwadrat wyświetlany na stole montażowym w domyślnych współrzędnych (0,0). W tym celu wywoływana jest metoda addChild().
  4. Dodaje jeden detektor zdarzeń związanych z muszą i dwa detektory zdarzeń związanych z klawiaturą:
    • click/clickHandler wywoływane, gdy użytkownik kliknie kwadrat w celu przeniesienia fokusu na ikonkę child, tak aby wykrywała ona zdarzenia związane z klawiaturą.
    • keyDown/keyDownHandler wywoływane każdorazowo po naciśnięciu dowolnego klawisza. Metoda będąca subskrybentem drukuje informacje o zdarzeniu za pomocą instrukcji trace().
    • keyUp/keyUpHandler wywoływane każdorazowo po zwolnieniu klawisza.

Podczas testowania przykładowego programu należy najpierw kliknąć kwadrat, aby zdarzenia generowane z klawiatury były wykrywane.

Ponadto, w przypadku użycia polecenia Testuj film w programie Flash, na niektóre klawisze może reagować interfejs projektowania, a nie detektory dołączone do ikonki o nazwie child.

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 ]Dlaczego język angielski?
Treść dokumentacji języka ActionScript 3.0 wyświetlana w języku angielskim

Niektóre części dokumentacji języka ActionScript 3.0 nie są przetłumaczone na poszczególne języki. Gdy element nie jest przetłumaczony na dany język, jest wyświetlany tekst angielski. Na przykład opis klasy ga.controls.HelpBox nie jest przetłumaczony na żaden dodatkowy język. Z tego powodu polska wersja dokumentacji zawiera opis klasy ga.controls.HelpBox w języku angielskim.