Pakiet | fl.managers |
Klasa | public class FocusManager |
Dziedziczenie | FocusManager Object |
Implementuje | IFocusManager |
Wersja języka: | ActionScript 3.0 |
Wersja produktu: | Flash CS3 |
Wersje środowiska wykonawczego: | Flash Player 9.0.28.0, AIR 1.0 |
Do nawigacji w takiej pętli używany jest zazwyczaj klawisz Tab; aktywność jest przenoszona między składnikami pętli drogą okrężną, od pierwszego aktywnego składnika do ostatniego, a potem znów do pierwszego. Pętla aktywacji klawiszem Tab zawiera wszystkie składniki i składniki obsługujące klawisz Tab w kontenerze. Aplikacja może zawierać wiele pętli aktywacji klawiszem Tab.
Jedna instancja klasy FocusManager odpowiada za jedną pętlę aktywacji klawiszem Tab; aplikacja wykorzystuje różne instancje klasy FocusManager do zarządzania poszczególnymi zawartymi w niej pętlami aktywacji klawiszem Tab, jednak główna aplikacja jest zawsze skojarzona z co najmniej jedną instancją klasy FocusManager. W aplikacji mogą być potrzebne dodatkowe instancje klasy FocusManager, jeśli aplikacja zawiera okno podręczne, które np. zawiera jedną lub wiele odrębnych pętli składników.
Wszystkie składniki zarządzane przez instancję klasy FocusManager muszą implementować interfejs fl.managers.IFocusManagerComponent. Obiekty, których aktywnością zarządza program Flash Player, nie muszą implementować interfejsu IFocusManagerComponent.
Klasa FocusManager zarządza także implementacją przycisku domyślnego. Przycisk domyślny wywołuje zdarzenie click
, gdy użytkownik naciśnie klawisz Enter w formularzu, niezależnie od tego, który składnik był w danej chwili aktywny. Przycisk domyślny nie wywołuje zdarzenia click
, jeśli aktywny jest obszar tekstowy lub jeśli trwa edycja wartości w składniku, takim jak ComboBox lub NumericStepper.
Powiązane elementy interfejsu API
Właściwość | Zdefiniowane przez | ||
---|---|---|---|
constructor : Object
Odwołanie do obiektu klasy lub funkcji konstruktora, dotyczące danej instancji obiektu. | Object | ||
defaultButton : Button
Pobiera lub ustawia bieżący przycisk domyślny. | FocusManager | ||
defaultButtonEnabled : Boolean
Pobiera lub ustawia wartość określającą, czy przycisk domyślny jest włączony. | FocusManager | ||
form : DisplayObjectContainer
Podstawowy obiekt DisplayObjectContainer dla interfejsu IFocusManager, zazwyczaj stół montażowy. | FocusManager | ||
nextTabIndex : int [tylko do odczytu]
Pobiera unikatowy indeks aktywacji klawiszem Tab, który ma być używany w tej pętli aktywacji. | FocusManager | ||
showFocusIndicator : Boolean
Pobiera lub ustawia wartość określającą, czy aktywny składnik powinien być oznaczony wizualnym wskaźnikiem aktywności. | FocusManager |
Metoda | Zdefiniowane przez | ||
---|---|---|---|
FocusManager(container:DisplayObjectContainer)
Tworzy nową instancję składnika FocusManager. | FocusManager | ||
Uaktywnia wystąpienie klasy FocusManager. | FocusManager | ||
Dezaktywuje składnik FocusManager. | FocusManager | ||
Pobiera obiekt interaktywny zawierający dany obiekt, jeśli istnieje. | FocusManager | ||
Pobiera obiekt interaktywny, który jest w danej chwili aktywny. | FocusManager | ||
Pobiera obiekt interaktywny, który stałby się aktywny, gdyby użytkownik nacisnął klawisz Tab w celu przejścia do następnego obiektu. | FocusManager | ||
Wskazuje, czy dla obiektu zdefiniowano określoną właściwość. | Object | ||
Ustawia wartość showFocusIndicator na false i usuwa wizualny wskaźnik aktywności z aktywnego obiektu, jeśli taki istnieje. | FocusManager | ||
Wskazuje, czy instancja klasy Object należy do łańcucha prototypów obiektu określonego jako parametr. | Object | ||
Wskazuje, czy określona właściwość istnieje i jest przeliczalna. | Object | ||
Czyni aktywnym składnik IFocusManagerComponent. | FocusManager | ||
Ustawia dostępność właściwości dynamicznej używanej w pętlach. | Object | ||
Ustawia wartość parametru showFocusIndicator na prawda i powoduje wyświetlenie graficznego wskaźnika aktywności obiektu (o ile obiekt jest aktywny). | FocusManager | ||
Zwraca ciąg reprezentujący obiekt — sformatowany zgodnie z konwencjami właściwymi dla ustawień regionalnych. | Object | ||
Zwraca ciąg reprezentujący określony obiekt. | Object | ||
Zwraca pierwotną wartość dla określonego obiektu. | Object |
defaultButton | właściwość |
defaultButton:Button
Wersja języka: | ActionScript 3.0 |
Wersja produktu: | Flash CS3 |
Wersje środowiska wykonawczego: | Flash Player 9.0.28.0, AIR 1.0 |
Pobiera lub ustawia bieżący przycisk domyślny.
Przycisk domyślny to przycisk formularza, który wywołuje zdarzenie click
po naciśnięciu klawisza Enter, w zależności od tego, który składnik jest w danej chwili aktywny.
Implementacja
public function get defaultButton():Button
public function set defaultButton(value:Button):void
defaultButtonEnabled | właściwość |
defaultButtonEnabled:Boolean
Wersja języka: | ActionScript 3.0 |
Wersja produktu: | Flash CS3 |
Wersje środowiska wykonawczego: | Flash Player 9.0.28.0, AIR 1.0 |
Pobiera lub ustawia wartość określającą, czy przycisk domyślny jest włączony. Jeśli ta wartość jest ustawiona na true
, menedżer aktywności monitoruje klawisz Enter i wywołuje zdarzenie click
dla przycisku domyślnego w wypadku naciśnięcia klawisza Enter, gdy aktywny jest akurat składnik inny niż Button. Jeśli ta wartość jest ustawiona na false
, menedżer aktywności nie monitoruje klawisza Enter. Składniki, które korzystają z klawisza Enter, ustawiają tę właściwość na false
, aby zapobiec wywoływaniu zdarzenia click
dla przycisku domyślnego (o ile istnieje), gdy użytkownik naciśnie klawisz Enter.
Implementacja
public function get defaultButtonEnabled():Boolean
public function set defaultButtonEnabled(value:Boolean):void
form | właściwość |
form:DisplayObjectContainer
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | AIR 1.0, Flash Player 9.0.28.0 |
Podstawowy obiekt DisplayObjectContainer dla interfejsu IFocusManager, zazwyczaj stół montażowy.
Implementacja
public function get form():DisplayObjectContainer
public function set form(value:DisplayObjectContainer):void
nextTabIndex | właściwość |
nextTabIndex:int
[tylko do odczytu] Wersja języka: | ActionScript 3.0 |
Wersja produktu: | Flash CS3 |
Wersje środowiska wykonawczego: | Flash Player 9.0.28.0, AIR 1.0 |
Pobiera unikatowy indeks aktywacji klawiszem Tab, który ma być używany w tej pętli aktywacji.
Implementacja
public function get nextTabIndex():int
showFocusIndicator | właściwość |
showFocusIndicator:Boolean
Wersja języka: | ActionScript 3.0 |
Wersja produktu: | Flash CS3 |
Wersje środowiska wykonawczego: | Flash Player 9.0.28.0, AIR 1.0 |
Pobiera lub ustawia wartość określającą, czy aktywny składnik powinien być oznaczony wizualnym wskaźnikiem aktywności.
Implementacja
public function get showFocusIndicator():Boolean
public function set showFocusIndicator(value:Boolean):void
FocusManager | () | Konstruktor |
public function FocusManager(container:DisplayObjectContainer)
Wersja języka: | ActionScript 3.0 |
Wersja produktu: | Flash CS3 |
Wersje środowiska wykonawczego: | Flash Player 9.0.28.0, AIR 1.0 |
Tworzy nowe wystąpienie składnika FocusManager.
Menedżer aktywności zarządza aktywnością w obiektach podrzędnych obiektu DisplayObjectContainer.
Parametrycontainer:DisplayObjectContainer — Obiekt DisplayObjectContainer zawierający menedżera aktywności lub stół montażowy .
|
activate | () | metoda |
public function activate():void
Wersja języka: | ActionScript 3.0 |
Wersja produktu: | Flash CS3 |
Wersje środowiska wykonawczego: | Flash Player 9.0.28.0, AIR 1.0 |
Uaktywnia instancję klasy.
Instancja klasy FocusManager dodaje detektory zdarzeń umożliwiające jej monitorowanie interakcji z klawiaturą i myszą związanych ze zmianami aktywności.
deactivate | () | metoda |
public function deactivate():void
Wersja języka: | ActionScript 3.0 |
Wersja produktu: | Flash CS3 |
Wersje środowiska wykonawczego: | Flash Player 9.0.28.0, AIR 1.0 |
Dezaktywuje składnik FocusManager.
Instancja klasy FocusManager usuwa detektory zdarzeń umożliwiające jej monitorowanie interakcji z klawiaturą i myszą związanych ze zmianami aktywności.
findFocusManagerComponent | () | metoda |
public function findFocusManagerComponent(component:InteractiveObject):InteractiveObject
Wersja języka: | ActionScript 3.0 |
Wersja produktu: | Flash CS3 |
Wersje środowiska wykonawczego: | Flash Player 9.0.28.0, AIR 1.0 |
Pobiera obiekt interaktywny zawierający dany obiekt, jeśli istnieje. Odtwarzacz może aktywować składnik podrzędny składnika programu Flash; ta metoda określa, który obiekt interaktywny jest aktywny z perspektywy składnika.
Parametry
component:InteractiveObject — Obiekt, który może stawać się aktywny na poziomie odtwarzacza.
|
InteractiveObject — Obiekt zawierający składnik component lub, jeśli nie zostanie znaleziony, sam składnik component .
|
getFocus | () | metoda |
public function getFocus():InteractiveObject
Wersja języka: | ActionScript 3.0 |
Wersja produktu: | Flash CS3 |
Wersje środowiska wykonawczego: | Flash Player 9.0.28.0, AIR 1.0 |
Pobiera obiekt interaktywny, który jest w danej chwili aktywny. Firma Adobe zaleca wywoływanie tej metody zamiast korzystania z obiektu Stage, ponieważ wskazuje ona precyzyjnie aktywny składnik. Obiekt Stage może zwrócić składnik podrzędny aktywnego składnika.
ZwracaInteractiveObject — Obiekt interaktywny, który jest w danej chwili aktywny.
|
getNextFocusManagerComponent | () | metoda |
public function getNextFocusManagerComponent(backward:Boolean = false):InteractiveObject
Wersja języka: | ActionScript 3.0 |
Wersja produktu: | Flash CS3 |
Wersje środowiska wykonawczego: | Flash Player 9.0.28.0, AIR 1.0 |
Pobiera obiekt interaktywny, który stałby się aktywny, gdyby użytkownik nacisnął klawisz Tab w celu przejścia do następnego obiektu. Jeśli w aplikacji nie ma innych poprawnych obiektów, ta metoda pobiera obiekt, który jest obecnie aktywny.
Parametry
backward:Boolean (default = false ) — Jeśli ten parametr ma wartośc true , aktywność jest przenoszona wstecz, a ta metoda pobiera obiekt, który stałby się aktywny jako następny, gdyby użytkownik nacisnął kombinację klawiszy Shift+Tab.
|
InteractiveObject — Składnik, który jako następny stałby się aktywny.
|
hideFocus | () | metoda |
public function hideFocus():void
Wersja języka: | ActionScript 3.0 |
Wersja produktu: | Flash CS3 |
Wersje środowiska wykonawczego: | Flash Player 9.0.28.0, AIR 1.0 |
Ustawia wartość showFocusIndicator
na false
i usuwa wizualny wskaźnik aktywności z aktywnego obiektu, jeśli taki istnieje.
setFocus | () | metoda |
public function setFocus(component:InteractiveObject):void
Wersja języka: | ActionScript 3.0 |
Wersja produktu: | Flash CS3 |
Wersje środowiska wykonawczego: | Flash Player 9.0.28.0, AIR 1.0 |
Czyni aktywnym składnik IFocusManagerComponent. Ta metoda nie sprawdza widoczności, stanu włączenia ani innych warunków.
Parametry
component:InteractiveObject — Obiekt, który może stawać się aktywny.
|
showFocus | () | metoda |
public function showFocus():void
Wersja języka: | ActionScript 3.0 |
Wersja produktu: | Flash CS3 |
Wersje środowiska wykonawczego: | Flash Player 9.0.28.0, AIR 1.0 |
Ustawia wartość showFocusIndicator
na true
i rysuje wizualny wskaźnik aktywności na aktywnym obiekcie, jeśli taki istnieje.
W celu uruchomienia przykładu należy wykonać poniższe czynności:
- Dodaj składnik TextInput do biblioteki.
- Zapisz ten kod pod nazwą FocusManagerExample.as w tym samym katalogu, co plik FLA.
- W pliku FLA ustaw klasę dokumentu na FocusManagerExample.
package { import fl.controls.TextInput; import fl.managers.FocusManager; import flash.display.InteractiveObject; import flash.display.Sprite; import flash.events.*; import flash.utils.Timer; public class FocusManagerExample extends Sprite { private var fm:FocusManager; public function FocusManagerExample() { buildGridOfTextInputs(); fm = new FocusManager(this); var t:Timer = new Timer(1000); t.addEventListener(TimerEvent.TIMER,secondPassed); t.start(); } private function buildGridOfTextInputs():void { var rowSpacing:uint = 30; var colSpacing:uint = 110; var totalRows:uint = 4; var totalCols:uint = 3; var i:uint; for(i = 0; i < totalRows * totalCols; i++) { var ti:TextInput = new TextInput() ti.name = "component"+i.toString(); ti.addEventListener(FocusEvent.FOCUS_IN,focusChange); ti.setSize(100,20); ti.x = 10 + ((i % totalCols) * colSpacing); ti.y = 10 + (Math.floor(i / totalCols) * rowSpacing); ti.tabEnabled = true; addChild(ti); } } private function secondPassed(e:TimerEvent):void { var nextComponent:InteractiveObject = fm.getNextFocusManagerComponent(); fm.setFocus(nextComponent); } private function focusChange(e:FocusEvent):void { trace("Focus change: " + e.target.name); } } }
Tue Jun 12 2018, 12:06 PM Z