Package | fl.managers |
Classe | public class FocusManager |
Héritage | FocusManager Object |
Implémente | IFocusManager |
Version du langage: | ActionScript 3.0 |
Version du produit: | Flash CS3 |
Versions du moteur d’exécution: | Flash Player 9.0.28.0, AIR 1.0 |
La navigation à l’intérieur d’une boucle de tabulation se fait généralement à l’aide de la touche de tabulation ; le focus passe d’un composant à un autre dans la boucle de navigation en décrivant un cercle, le focus passant du premier composant au dernier pour revenir au premier. Une boucle de tabulation comprend tous les composants, ainsi que les composants d’un conteneur compatibles avec une action de tabulation. Un application peut contenir de nombreuses boucles de tabulation.
Une occurrence de FocusManager est responsable d’une seule boucle de tabulation ; même si une application principale est toujours associée à au moins une occurrence de FocusManager, une application utilise plusieurs occurrences de FocusManager pour gérer chaque boucle de tabulation qu’elle contient. Une application peut nécessiter d’autres occurrences de FocusManager si elle comprend une fenêtre contextuelle qui, par exemple, contient distinctement une ou plusieurs boucles de tabulation de composants.
Tous les composants susceptibles d’être gérés par une occurrence de FocusManager doivent implémenter l’interface fl.managers.IFocusManagerComponent. Les objets dont le focus est géré par Flash Player ne sont pas tenus d’implémenter l’interface IFocusManagerComponent.
La classe FocusManager gère également l’implémentation du bouton par défaut. Un bouton par défaut distribue un événement click
lorsque l’utilisateur appuie sur la touche Entrée dans un formulaire, selon l’emplacement du focus à cet instant. Le bouton par défaut ne distribue pas d’événement click
si le focus se trouve dans une zone de texte ou si une valeur est en cours de modification dans un composant (par exemple, ComboBox ou NumericStepper).
Eléments de l’API associés
Propriété | Défini par | ||
---|---|---|---|
constructor : Object
Référence à l’objet de classe ou à la fonction constructeur d’une occurrence donnée d’un objet. | Object | ||
defaultButton : Button
Obtient ou définit le bouton par défaut actuel. | FocusManager | ||
defaultButtonEnabled : Boolean
Récupère ou définit une valeur indiquant si le bouton par défaut est activé. | FocusManager | ||
form : DisplayObjectContainer
DisplayObjectContainer de base pour IFocusManager, généralement la scène. | FocusManager | ||
nextTabIndex : int [lecture seule]
Récupère le prochain index de tabulation unique à utiliser dans cette boucle de tabulation. | FocusManager | ||
showFocusIndicator : Boolean
Récupère ou définit une valeur qui indique si un composant qui a le focus doit recevoir un indicateur visuel de focus. | FocusManager |
Méthode | Défini par | ||
---|---|---|---|
FocusManager(container:DisplayObjectContainer)
Crée une nouvelle occurrence de FocusManager. | FocusManager | ||
Active l’occurrence de FocusManager. | FocusManager | ||
Désactive le FocusManager. | FocusManager | ||
Récupère l’objet interactif qui contient l’objet donné, le cas échéant. | FocusManager | ||
Récupère l’objet interactif qui détient actuellement le focus. | FocusManager | ||
Récupère l’objet interactif qui recevrait le focus si l’utilisateur appuyait sur la touche de tabulation pour accéder à l’objet suivant. | FocusManager | ||
Indique si la propriété spécifiée d’un objet est définie. | Object | ||
Définit la valeur de showFocusIndicator sur false et supprime l’indicateur de focus visuel de l’objet qui a le focus, le cas échéant. | FocusManager | ||
Indique si une occurrence de la classe Object figure dans la chaîne de prototype de l’objet spécifié en tant que paramètre. | Object | ||
Indique si la propriété spécifiée existe et est énumérable. | Object | ||
Définit le focus sur un composant IFocusManagerComponent. | FocusManager | ||
Définit la disponibilité d’une propriété dynamique pour les opérations en boucle. | Object | ||
Définit la valeur de showFocusIndicator sur true et dessine l’indicateur de focus visuel sur l’objet qui a le focus, le cas échéant. | FocusManager | ||
Renvoie la représentation de chaîne de cet objet, formatée selon les paramètres régionaux en vigueur. | Object | ||
Renvoie la représentation sous forme de chaîne de l’objet spécifié. | Object | ||
Renvoie la valeur primitive de l’objet spécifié. | Object |
defaultButton | propriété |
defaultButton:Button
Version du langage: | ActionScript 3.0 |
Version du produit: | Flash CS3 |
Versions du moteur d’exécution: | Flash Player 9.0.28.0, AIR 1.0 |
Obtient ou définit le bouton par défaut actuel.
Le bouton par défaut correspond au bouton d’un formulaire qui distribue un événement click
lorsque l’utilisateur appuie sur la touche Entrée, en fonction de l’emplacement du focus à cet instant.
Implémentation
public function get defaultButton():Button
public function set defaultButton(value:Button):void
defaultButtonEnabled | propriété |
defaultButtonEnabled:Boolean
Version du langage: | ActionScript 3.0 |
Version du produit: | Flash CS3 |
Versions du moteur d’exécution: | Flash Player 9.0.28.0, AIR 1.0 |
Récupère ou définit une valeur indiquant si le bouton par défaut est activé. Si cette valeur est définie sur true
, le gestionnaire de focus surveille la touche Entrée et distribue un événement click
au bouton par défaut si l’utilisateur appuie sur la touche Entrée au moment où un composant autre qu’un bouton détient le focus. Si cette valeur est définie sur false
, le gestionnaire de focus ne surveille pas la touche Entrée. Les composants qui utilisent la touche Entrée définissent cette propriété sur false
pour empêcher la distribution d’un événement click
sur le bouton par défaut, dans le cas où il en existe un, lorsque l’utilisateur appuie sur la touche Entrée.
Implémentation
public function get defaultButtonEnabled():Boolean
public function set defaultButtonEnabled(value:Boolean):void
form | propriété |
form:DisplayObjectContainer
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 1.0, Flash Player 9.0.28.0 |
DisplayObjectContainer de base pour IFocusManager, généralement la scène.
Implémentation
public function get form():DisplayObjectContainer
public function set form(value:DisplayObjectContainer):void
nextTabIndex | propriété |
nextTabIndex:int
[lecture seule] Version du langage: | ActionScript 3.0 |
Version du produit: | Flash CS3 |
Versions du moteur d’exécution: | Flash Player 9.0.28.0, AIR 1.0 |
Récupère le prochain index de tabulation unique à utiliser dans cette boucle de tabulation.
Implémentation
public function get nextTabIndex():int
showFocusIndicator | propriété |
showFocusIndicator:Boolean
Version du langage: | ActionScript 3.0 |
Version du produit: | Flash CS3 |
Versions du moteur d’exécution: | Flash Player 9.0.28.0, AIR 1.0 |
Récupère ou définit une valeur qui indique si un composant qui a le focus doit recevoir un indicateur visuel de focus.
Implémentation
public function get showFocusIndicator():Boolean
public function set showFocusIndicator(value:Boolean):void
FocusManager | () | Constructeur |
public function FocusManager(container:DisplayObjectContainer)
Version du langage: | ActionScript 3.0 |
Version du produit: | Flash CS3 |
Versions du moteur d’exécution: | Flash Player 9.0.28.0, AIR 1.0 |
Crée une nouvelle occurrence de FocusManager.
Un gestionnaire de focus gère le focus au sein des enfants d’un objet DisplayObjectContainer.
Paramètrescontainer:DisplayObjectContainer — DisplayObjectContainer qui héberge le gestionnaire de focus ou stage .
|
activate | () | méthode |
public function activate():void
Version du langage: | ActionScript 3.0 |
Version du produit: | Flash CS3 |
Versions du moteur d’exécution: | Flash Player 9.0.28.0, AIR 1.0 |
Active l’occurrence de FocusManager.
L’occurrence FocusManager ajoute des gestionnaires d’événement qui lui permettent de surveiller les actions de la souris et du clavier en relation avec le focus.
deactivate | () | méthode |
public function deactivate():void
Version du langage: | ActionScript 3.0 |
Version du produit: | Flash CS3 |
Versions du moteur d’exécution: | Flash Player 9.0.28.0, AIR 1.0 |
Désactive le FocusManager.
Le FocusManager supprime les gestionnaires d’événement qui lui permettent de surveiller les actions de la souris et du clavier en relation avec le focus.
findFocusManagerComponent | () | méthode |
public function findFocusManagerComponent(component:InteractiveObject):InteractiveObject
Version du langage: | ActionScript 3.0 |
Version du produit: | Flash CS3 |
Versions du moteur d’exécution: | Flash Player 9.0.28.0, AIR 1.0 |
Récupère l’objet interactif qui contient l’objet donné, le cas échéant. Le lecteur pouvant attribuer le focus à un sous-composant d’un composant Flash, cette méthode identifie l’objet interactif qui a le focus du point de vue du composant.
Paramètres
component:InteractiveObject — Objet pouvant avoir le focus de niveau Flash Player.
|
InteractiveObject — Objet contenant l’objet component ou, si aucun objet de ce type n’est trouvé, l’objet component lui-même.
|
getFocus | () | méthode |
public function getFocus():InteractiveObject
Version du langage: | ActionScript 3.0 |
Version du produit: | Flash CS3 |
Versions du moteur d’exécution: | Flash Player 9.0.28.0, AIR 1.0 |
Récupère l’objet interactif qui détient actuellement le focus. Adobe conseille d’appeler cette méthode plutôt que d’utiliser l’objet Stage, car cette méthode indique le composant qui a le focus. L’objet Stage risque de renvoyer un sous-composant dans ce composant.
Valeur renvoyéeInteractiveObject — Objet interactif qui détient actuellement le focus.
|
getNextFocusManagerComponent | () | méthode |
public function getNextFocusManagerComponent(backward:Boolean = false):InteractiveObject
Version du langage: | ActionScript 3.0 |
Version du produit: | Flash CS3 |
Versions du moteur d’exécution: | Flash Player 9.0.28.0, AIR 1.0 |
Récupère l’objet interactif qui recevrait le focus si l’utilisateur appuyait sur la touche de tabulation pour accéder à l’objet suivant. Cette méthode récupère l’objet qui détient actuellement le focus s’il n’y a pas d’autre objet valide dans l’application.
Paramètres
backward:Boolean (default = false ) — Si ce paramètre a la valeur true , le focus se déplace vers l’avant, ce qui amène cette méthode à récupérer le prochain objet appelé à recevoir le focus si l’utilisateur appuie sur la combinaison Maj + Tab.
|
InteractiveObject — Prochain composant appelé à recevoir le focus.
|
hideFocus | () | méthode |
public function hideFocus():void
Version du langage: | ActionScript 3.0 |
Version du produit: | Flash CS3 |
Versions du moteur d’exécution: | Flash Player 9.0.28.0, AIR 1.0 |
Définit la valeur de showFocusIndicator
sur false
et supprime l’indicateur de focus visuel de l’objet qui a le focus, le cas échéant.
setFocus | () | méthode |
public function setFocus(component:InteractiveObject):void
Version du langage: | ActionScript 3.0 |
Version du produit: | Flash CS3 |
Versions du moteur d’exécution: | Flash Player 9.0.28.0, AIR 1.0 |
Définit le focus sur un composant IFocusManagerComponent. Cette méthode ne vérifie ni la visibilité du composant, ni son état activé, ni aucune autre condition.
Paramètres
component:InteractiveObject — Objet qui peut recevoir le focus.
|
showFocus | () | méthode |
public function showFocus():void
Version du langage: | ActionScript 3.0 |
Version du produit: | Flash CS3 |
Versions du moteur d’exécution: | Flash Player 9.0.28.0, AIR 1.0 |
Définit la valeur de showFocusIndicator
sur true
et dessine l’indicateur de focus visuel sur l’objet qui a le focus, le cas échéant.
Pour exécuter l’exemple, suivez ces étapes :
- Ajoutez le composant TextInput à la bibliothèque.
- Enregistrez ce code sous le nom FocusManagerExample.as dans le même répertoire que votre fichier FLA.
- Dans le fichier FLA, définissez la classe Document sur 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, 09:30 AM Z