Packagefl.lang
Classepublic class Locale
HéritageLocale Inheritance EventDispatcher Inheritance Object

Version du langage : ActionScript 3.0
Version du lecteur : Flash Player 9

La classe fl.lang.Locale vous permet de contrôler la façon dont le texte multilingue s'affiche dans un fichier SWF. Le panneau Chaînes de Flash vous permet d'utiliser des ID de chaîne au lieu de littéraux de chaîne dans les champs de texte dynamique. Vous pouvez ainsi créer un fichier SWF affichant du texte chargé à partir d'un fichier XML spécifique à une langue. Le fichier XML doit répondre à la norme XML Localization Interchange File Format (XLIFF). Vous pouvez afficher les chaînes spécifiques à une langue contenues dans les fichiers XLIFF de trois manières différentes :

Vous pouvez utiliser les propriétés et les méthodes de cette classe lorsque vous souhaitez remplacer les ID de chaîne « via ActionScript lors de l'exécution ».

Toutes les propriétés et les méthodes disponibles sont statiques, ce qui signifie qu'elles sont accessibles via la classe fl.lang.Locale plutôt que par le biais d'une occurrence de la classe.

Remarque : la classe Locale est installée dans le chemin de classe de l'outil de programmation Flash et est automatiquement compilée dans vos fichiers SWF. La classe étant compilée dans le fichier SWF, l'utilisation de la classe Locale a pour effet d'accroître légèrement la taille de ce fichier.

Voir aussi

flash.system.Capabilities.language


Propriétés publiques
 PropriétéDéfini par
  autoReplace : Boolean
[static] Détermine si les chaînes sont remplacées automatiquement une fois le chargement du fichier xml terminé.
Locale
 Inheritedconstructor : Object
Référence à l'objet de classe ou à la fonction constructeur d'une occurrence donnée d'un objet.
Object
  languageCodeArray : Array
[static] [lecture-seule] Tableau contenant les codes de langue des langues qui ont été spécifiées ou chargées dans le fichier FLA.
Locale
 Inheritedprototype : Object
[static] Référence à l’objet prototype d’un objet de classe ou fonction.
Object
  stringIDArray : Array
[static] [lecture-seule] Tableau contenant tous les ID de chaîne du fichier FLA.
Locale
Méthodes publiques
 MéthodeDéfini par
  
addDelayedInstance(instance:Object, stringID:String):*
[static] Ajoute la paire {instance, string ID} dans le tableau interne en vue d'une utilisation ultérieure.
Locale
 Inherited
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Enregistre un objet écouteur d’événement auprès d’un objet EventDispatcher afin que l’écouteur soit averti d’un événement.
EventDispatcher
  
addXMLPath(langCode:String, path:String):void
[static] Ajoute la paire {languageCode et languagePath} dans le tableau interne en vue d'une utilisation ultérieure.
Locale
  
[static] Renvoie true si le fichier XML est chargé, false dans les autres cas.
Locale
 Inherited
Distribue un événement dans le flux d’événements.
EventDispatcher
  
[static] Code de langue par défaut, tel que défini dans la boîte de dialogue du panneau Chaînes ou en appelant la méthode setDefaultLang().
Locale
 Inherited
Vérifie si des écouteurs sont enregistrés auprès de l'objet EventDispatcher pour un type spécifique d’événement.
EventDispatcher
 Inherited
Indique si la propriété spécifiée d'un objet est définie.
Object
  
[static] Détermine automatiquement la langue à utiliser et charge le fichier de langue XML.
Locale
 Inherited
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
  
loadLanguageXML(xmlLanguageCode:String, customXmlCompleteCallback:Function = null):void
[static] Charge le dossier de langue XML spécifié.
Locale
  
[static] Renvoie la valeur de chaîne associée à l'ID de chaîne spécifié dans la langue actuellement utilisée.
Locale
  
loadStringEx(stringID:String, languageCode:String):String
[static] Renvoie la valeur de chaîne associée à l'ID de chaîne et au code de langue spécifiés.
Locale
 Inherited
Indique si la propriété spécifiée existe et est énumérable.
Object
 Inherited
removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void
Supprime un écouteur de l’objet EventDispatcher.
EventDispatcher
  
[static] Définit le code de langue par défaut.
Locale
  
setLoadCallback(loadCallback:Function):*
[static] Définit la fonction de rappel qui sera appelée une fois le fichier XML chargé.
Locale
 Inherited
Définit la disponibilité d'une propriété dynamique pour les opérations en boucle.
Object
  
setString(stringID:String, languageCode:String, stringValue:String):void
[static] Définit la nouvelle valeur de chaîne d'un ID de chaîne et d'un code de langue spécifiés.
Locale
 Inherited
Renvoie la représentation sous forme de chaîne de l'objet spécifié.
Object
 Inherited
Renvoie la valeur primitive de l'objet spécifié.
Object
 Inherited
Vérifie si un écouteur d’événement est enregistré auprès de cet objet EventDispatcher ou de ses ancêtres pour le type d’événement spécifié.
EventDispatcher
Evénements
 Evénement Synthèse Défini par
 Inherited Distribué lorsque Flash Player a le focus du système d’exploitation et devient actif.EventDispatcher
 Inherited Distribué lorsque Flash Player perd le focus du système d’exploitation et devient inactif.EventDispatcher
Détails des propriétés
autoReplacepropriété
autoReplace:Boolean  [lecture-écriture]

Version du langage : ActionScript 3.0
Version du lecteur : Flash Player 9

Détermine si les chaînes sont remplacées automatiquement une fois le chargement du fichier xml terminé. Si la valeur est true, la méthode de remplacement du texte est équivalente au paramètre "automatically at runtime" du panneau Chaînes. Cela signifie que Flash Player détermine la langue par défaut de l'environnement hôte et affiche automatiquement le texte dans cette langue. Si la valeur est false, la méthode de remplacement du texte est équivalente au paramètre "via ActionScript runtime" du panneau Chaînes. Cela signifie que vous êtes responsable du chargement du fichier XML approprié pour afficher le texte.

La valeur par défaut de cette propriété reflète le paramètre que vous sélectionnez pour l'option Remplacer les chaînes dans la boîte de dialogue du panneau Chaînes : true pour "automatically at runtime" (paramètre par défaut) et false pour "via ActionScript at runtime".


Implémentation
    public static function get autoReplace():Boolean
    public function set autoReplace(value:Boolean):void

Exemple
L'exemple suivant utilise la propriété Locale.autoReplace pour remplir le champ de texte greeting_txt créé dynamiquement sur la scène par le contenu de la chaîne IDS_GREETING du fichier XML anglais. Dans le panneau Chaînes, cliquez sur le bouton Paramètres pour ouvrir la boîte de dialogue Paramètres. Vous pouvez ajouter deux langues actives dans la boîte de dialogue Paramètres : Anglais (en) et Français (fr), définissez l'option de remplacement des chaînes sur "via ActionScript at runtime", puis cliquez sur OK. Enfin, entrez un ID de chaîne IDS_GREETING dans le panneau Chaînes et ajoutez du texte pour chaque langue active.
     var greeting_txt:TextField = new TextField();
     greeting_txt.x = 40;
     greeting_txt.y = 40;
     greeting_txt.width = 200;
     greeting_txt.height = 20;
     greeting_txt.autoSize = TextFieldAutoSize.LEFT;
     Locale.autoReplace = true;
     Locale.addDelayedInstance(greeting_txt, "IDS_GREETING");
     Locale.loadLanguageXML("en");
     
languageCodeArraypropriété 
languageCodeArray:Array  [lecture-seule]

Version du langage : ActionScript 3.0
Version du lecteur : Flash Player 9

Tableau contenant les codes de langue des langues qui ont été spécifiées ou chargées dans le fichier FLA. Les codes de langue ne sont pas triés par ordre alphabétique.


Implémentation
    public static function get languageCodeArray():Array

Exemple
L'exemple suivant charge un fichier de langue XML en fonction de la valeur actuelle d'un composant ComboBox. Faites glisser un composant ComboBox sur la scène et donnez-lui un nom d'occurrence lang_cb. A l'aide de l'outil Texte, créez un champ de texte dynamique et donnez-lui un nom d'occurrence greeting_txt. Dans le panneau Chaînes, ajoutez au moins deux langues actives, définissez l'option de remplacement des chaînes sur "via ActionScript at runtime", puis cliquez sur OK. Ensuite, ajoutez un ID de chaîne IDS_GREETING, puis entrez du texte pour chaque langue active. Enfin, ajoutez le code ActionScript suivant à l'image 1 du scénario principal :
     Locale.setLoadCallback(localeListener);
     lang_cb.dataProvider = Locale.languageCodeArray.sort();
     lang_cb.addEventListener("change", langListener);
     
     function langListener(eventObj:Object):void {
      Locale.loadLanguageXML(eventObj.target.value);
     }
     function localeListener(success:Boolean):void {
      if (success) {
          greeting_txt.text = Locale.loadString("IDS_GREETING");
      } else {
          greeting_txt.text = "unable to load language XML file.";
      }
     }
     
stringIDArraypropriété 
stringIDArray:Array  [lecture-seule]

Version du langage : ActionScript 3.0
Version du lecteur : Flash Player 9

Tableau contenant tous les ID de chaîne du fichier FLA. Les ID de chaîne ne sont pas triés par ordre alphabétique.


Implémentation
    public static function get stringIDArray():Array

Exemple
L'exemple suivant présente la propriété Locale.stringIDArray du fichier de langue XML actuellement chargé. Dans le panneau Chaînes, cliquez sur le bouton Paramètres pour ouvrir la boîte de dialogue Paramètres. Ajoutez ensuite deux langues actives : Anglais (en) et Français (fr), définissez le bouton radio de remplacement des chaînes sur "via ActionScript at runtime", puis cliquez sur OK. Dans le panneau Chaînes, ajoutez un ID de chaîne IDS_GREETING, puis ajoutez du texte pour chaque langue active.
     Locale.setLoadCallback(localeCallback);
     Locale.loadLanguageXML("fr");
     function localeCallback(success:Boolean) {
      trace(success);
      trace(Locale.stringIDArray); // IDS_GREETING
      trace(Locale.loadStringEx("IDS_GREETING", "fr")); // bonjour
     }
     
Détails des méthodes
addDelayedInstance()méthode
public static function addDelayedInstance(instance:Object, stringID:String):*

Version du langage : ActionScript 3.0
Version du lecteur : Flash Player 9

Ajoute la paire {instance, string ID} dans le tableau interne en vue d'une utilisation ultérieure. Flash procède généralement ainsi lorsque la méthode de remplacement des chaînes est définie sur "automatically at runtime".

Paramètres

instance:Object — Nom d'occurrence du champ de texte à renseigner.
 
stringID:String — ID de chaîne de langue.

Valeur renvoyée
*

Exemple
L'exemple suivant utilise la propriété autoReplace et la méthode addDelayedInstance() pour renseigner un champ de texte de la scène avec la chaîne IDS_GREETING provenant du fichier de langue XML anglais.
     greeting_txt.autoSize = TextFieldAutoSize.LEFT;
     Locale.autoReplace = true;
     Locale.addDelayedInstance(greeting_txt, "IDS_GREETING");
     Locale.loadLanguageXML("en");
     
addXMLPath()méthode 
public static function addXMLPath(langCode:String, path:String):void

Version du langage : ActionScript 3.0
Version du lecteur : Flash Player 9

Ajoute la paire {languageCode et languagePath} dans le tableau interne en vue d'une utilisation ultérieure. Flash procède généralement ainsi lorsque la méthode de remplacement des chaînes est définie sur "automatically at runtime" ou "via ActionScript at runtime".

Paramètres

langCode:String — Code de langue.
 
path:String — Chemin XML à ajouter.


Exemple
L'exemple suivant utilise la méthode setInterval() afin de vérifier si le fichier de langue XML a été chargé avec succès.
     Locale.setLoadCallback(localeCallback);
     Locale.loadLanguageXML("en");
     // create interval to check if language XML file is loaded
     var locale_int:Number = setInterval(checkLocaleStatus, 10);
     function checkLocaleStatus():void {
      if (Locale.checkXMLStatus()) {
          clearInterval(locale_int);
          trace("clearing interval @ " + getTimer() + " ms");
      }
     }
     // callback function for Locale.setLoadCallback()
     function localeCallback(success:Boolean):void {
      greeting_txt.text = Locale.loadString("IDS_GREETING");
     }
     
checkXMLStatus()méthode 
public static function checkXMLStatus():Boolean

Version du langage : ActionScript 3.0
Version du lecteur : Flash Player 9

Renvoie true si le fichier XML est chargé ; false dans l'autre cas.

Valeur renvoyée
Boolean — Renvoie true si le fichier XML est chargé ; false dans l'autre cas.

Exemple
L'exemple suivant utilise un intervalle de 10 millisecondes afin de vérifier si le fichier de langue a été chargé avec succès. Une fois le fichier XML chargé, l'occurrence du champ de texte greeting_txt de la scène est renseignée par la chaîne IDS_GREETING du fichier de langue XML.
     Locale.setLoadCallback(localeCallback);
     Locale.loadLanguageXML("en");
     // create interval to check if language XML file is loaded
     var locale_int:Number = setInterval(checkLocaleStatus, 10);
     function checkLocaleStatus():void {
      if (Locale.checkXMLStatus()) {
          clearInterval(locale_int);
          trace("clearing interval @ " + getTimer() + " ms");
      }
     }
     // callback function for Locale.setLoadCallback()
     function localeCallback(success:Boolean):void {
      greeting_txt.text = Locale.loadString("IDS_GREETING");
     }
     
getDefaultLang()méthode 
public static function getDefaultLang():String

Version du langage : ActionScript 3.0
Version du lecteur : Flash Player 9

Code de langue par défaut tel que défini dans la boîte de dialogue du panneau Chaînes ou en appelant la méthode setDefaultLang().

Valeur renvoyée
String — Renvoie le code de langue par défaut.

Voir aussi


Exemple
L'exemple suivant crée une variable intitulée defLang, utilisée pour conserver la langue par défaut initiale du document Flash. Dans le panneau Chaînes, cliquez sur le bouton Paramètres pour ouvrir la boîte de dialogue Paramètres. Ajoutez ensuite deux langues actives : Anglais (en) et Français (fr), définissez le bouton radio de remplacement des chaînes sur "via ActionScript at runtime", puis cliquez sur OK. Dans le panneau Chaînes, ajoutez un ID de chaîne IDS_GREETING, puis ajoutez du texte pour chaque langue active.
     var defLang:String = "fr";
     Locale.setDefaultLang(defLang);
     Locale.setLoadCallback(localeCallback);
     Locale.loadLanguageXML(Locale.getDefaultLang());
     function localeCallback(success:Boolean) {
      if (success) {
          trace(Locale.stringIDArray); // IDS_GREETING
          trace(Locale.loadString("IDS_GREETING"));
      } else {
          trace("unable to load XML");
      }
     }
     
initialize()méthode 
public static function initialize():void

Version du langage : ActionScript 3.0
Version du lecteur : Flash Player 9

Détermine automatiquement la langue à utiliser et charge le fichier de langue XML. Flash procède généralement ainsi lorsque la méthode de remplacement des chaînes est définie sur "automatically at runtime".


Exemple
L'exemple suivant indique comment utiliser la méthode initialize() pour renseigner automatiquement le champ de texte greeting_txt présent sur la scène avec la langue du système d'exploitation actuellement utilisée par l'utilisateur. Au lieu d'utiliser directement la méthode initialize(), utilisez la méthode de remplacement des chaînes définie sur "automatically at runtime".
     trace(System.capabilities.language);
     Locale.autoReplace = true;
     Locale.addDelayedInstance(greeting_txt, "IDS_GREETING");
     Locale.initialize();
     
loadLanguageXML()méthode 
public static function loadLanguageXML(xmlLanguageCode:String, customXmlCompleteCallback:Function = null):void

Version du langage : ActionScript 3.0
Version du lecteur : Flash Player 9

Charge le dossier de langue XML spécifié.

Paramètres

xmlLanguageCode:String — Code de langue du fichier de langue XML que vous souhaitez charger.
 
customXmlCompleteCallback:Function (default = null) — Fonction de rappel personalisée à appeler lors du chargement du fichier de langue XML.


Exemple
L'exemple suivant utilise la méthode loadLanguageXML() pour charger le fichier de langue XML Anglais (en). Une fois le fichier de langue chargé, la méthode localeCallback() est appelée et renseigne le champ de texte greeting_txt présent sur la scène avec le contenu de la chaîne IDS_GREETING du fichier XML.
     Locale.setLoadCallback(localeCallback);
     Locale.loadLanguageXML("en");
     // create interval to check if language XML file is loaded
     var locale_int:Number = setInterval(checkLocaleStatus, 10);
     function checkLocaleStatus():void {
      if (Locale.checkXMLStatus()) {
          clearInterval(locale_int);
          trace("clearing interval @ " + getTimer() + " ms");
      }
     }
     // callback function for Locale.setLoadCallback()
     function localeCallback(success:Boolean):void {
      greeting_txt.text = Locale.loadString("IDS_GREETING");
     }
     
loadString()méthode 
public static function loadString(id:String):String

Version du langage : ActionScript 3.0
Version du lecteur : Flash Player 9

Renvoie la valeur de chaîne associée à l'ID de chaîne spécifié dans la langue actuellement utilisée.

Paramètres

id:String — Numéro d'identification (ID) de la chaîne à charger.

Valeur renvoyée
String — Valeur de chaîne associée à l'ID de chaîne spécifié dans la langue actuellement utilisée.

Voir aussi


Exemple
L'exemple suivant utilise un intervalle de 10 millisecondes pour vérifier si le fichier de langue a été chargé avec succès. Une fois le fichier XML chargé, l'occurrence du champ de texte greeting_txt de la scène est renseignée par la chaîne IDS_GREETING du fichier de langue XML.
     Locale.setLoadCallback(localeCallback);
     Locale.loadLanguageXML("en");
     // create interval to check if language XML file is loaded
     var locale_int:Number = setInterval(checkLocaleStatus, 10);
     function checkLocaleStatus():void {
      if (Locale.checkXMLStatus()) {
          clearInterval(locale_int);
          trace("clearing interval @ " + getTimer() + " ms");
      }
     }
     // callback function for Locale.setLoadCallback()
     function localeCallback(success:Boolean):void {
      greeting_txt.text = Locale.loadString("IDS_GREETING");
     }
     
loadStringEx()méthode 
public static function loadStringEx(stringID:String, languageCode:String):String

Version du langage : ActionScript 3.0
Version du lecteur : Flash Player 9

Renvoie la valeur de chaîne associée à l'ID de chaîne et au code de langue spécifiés. Pour éviter le chargement inattendu du fichier XML, loadStringEx() ne charge pas le fichier de langue XML si le fichier XML n'est pas déjà chargé. Vous devez décider d'appeler la méthode loadLanguageXML() au moment opportun si vous souhaitez charger un fichier de langue XML.

Paramètres

stringID:String — Numéro d'identification (ID) de la chaîne à charger.
 
languageCode:String — Code de langue.

Valeur renvoyée
String — Valeur de chaîne associée à l'ID de chaîne spécifié dans la langue spécifiée par le paramètre languageCode.

Voir aussi


Exemple
L'exemple suivant utilise la méthode loadStringEx() pour analyser la valeur de la chaîne IDS_GREETING du fichier de langue XML Français actuellement chargé.
     Locale.setLoadCallback(localeCallback);
     Locale.loadLanguageXML("fr");
     function localeCallback(success:Boolean) {
      trace(success);
      trace(Locale.stringIDArray); // IDS_GREETING
      trace(Locale.loadStringEx("IDS_GREETING", "fr")); // bonjour
     }
     
setDefaultLang()méthode 
public static function setDefaultLang(langCode:String):void

Version du langage : ActionScript 3.0
Version du lecteur : Flash Player 9

Définit le code de langue par défaut.

Paramètres

langCode:String — Chaîne représentant un code de langue.

Voir aussi


Exemple
L'exemple suivant crée une variable intitulée defLang, utilisée pour conserver la langue par défaut initiale du document Flash. Dans le panneau Chaînes, cliquez sur le bouton Paramètres pour ouvrir la boîte de dialogue Paramètres. Ajoutez ensuite deux langues actives : Anglais (en) et Français (fr), définissez le bouton radio de remplacement des chaînes sur "via ActionScript at runtime", puis cliquez sur OK. Dans le panneau Chaînes, ajoutez un ID de chaîne IDS_GREETING, puis ajoutez du texte pour chaque langue active.
     var defLang:String = "fr";
     Locale.setDefaultLang(defLang);
     Locale.setLoadCallback(localeCallback);
     Locale.loadLanguageXML(Locale.getDefaultLang());
     function localeCallback(success:Boolean) {
      if (success) {
          trace(Locale.stringIDArray); // IDS_GREETING
          trace(Locale.loadString("IDS_GREETING"));
      } else {
          trace("unable to load XML");
      }
     }
     
setLoadCallback()méthode 
public static function setLoadCallback(loadCallback:Function):*

Version du langage : ActionScript 3.0
Version du lecteur : Flash Player 9

Définit la fonction de rappel qui sera appelée une fois le fichier XML chargé.

Paramètres

loadCallback:Function — Fonction à appeler lors du chargement du fichier de langue XML.

Valeur renvoyée
*

Exemple
L'exemple suivant utilise un intervalle de 10 millisecondes afin de vérifier si le fichier de langue a été chargé avec succès. Une fois le fichier XML chargé, l'occurrence du champ de texte greeting_txt de la scène est renseignée par la chaîne IDS_GREETING du fichier de langue XML.
     Locale.setLoadCallback(localeCallback);
     Locale.loadLanguageXML("en");
     // create interval to check if language XML file is loaded
     var locale_int:Number = setInterval(checkLocaleStatus, 10);
     function checkLocaleStatus():void {
      if (Locale.checkXMLStatus()) {
          clearInterval(locale_int);
          trace("clearing interval @ " + getTimer() + " ms");
      }
     }
     // callback function for Locale.setLoadCallback()
     function localeCallback(success:Boolean):void {
      greeting_txt.text = Locale.loadString("IDS_GREETING");
     }
     
setString()méthode 
public static function setString(stringID:String, languageCode:String, stringValue:String):void

Version du langage : ActionScript 3.0
Version du lecteur : Flash Player 9

Définit la nouvelle valeur de chaîne d'un ID de chaîne et d'un code de langue spécifiés.

Paramètres

stringID:String — Numéro d'identification (ID) de la chaîne à définir.
 
languageCode:String — Code de langue.
 
stringValue:String — Valeur de chaîne.


Exemple
L'exemple suivant utilise la méthode setString() pour définir la chaîne IDS_WELCOME des langues Anglais (en) et Français (fr).
     Locale.setString("IDS_WELCOME", "en", "hello");
     Locale.setString("IDS_WELCOME", "fr", "bonjour");
     trace(Locale.loadStringEx("IDS_WELCOME", "en")); // hello
     




 

M'envoyer un message électronique lorsque des commentaires sont ajoutés à cette page | Rapport de commentaire

Page en cours: http://livedocs.adobe.com/flash/9.0_fr/ActionScriptLangRefV3/fl/lang/Locale.html