Comment utiliser du texte dynamique en AS3 avec TextField ?

22 questions

Écrit le 21 septembre par Matthieu
Publié dans le(s) sujet(s) Framework AS3 Facile

Mots clés : , , , , , , , , ,

Pour travailler avec du texte dans Flash, il est nécessaire d‘utiliser une multitude de classes différentes !

En effet, les classes ( TextFieldAutoSize, TextFieldAlign, TextFieldType, TextFormatFont, TextField etc… sont utiles pour définir la mise en forme d’un champ texte.

Dans ce tutoriel, nous allons créer le Composant AS3 TextField pour simplifier la manipulation d’un champ texte.

Ce composant étendra tout simplement la classe de base TextField et ajoutera des fonctionnalités très intéressantes !

I – Cahier Des Charges Fonctionnel du TextField

Comme d’habitude, nous passons à la rédaction du CDCF (Cahier Des Charges Fonctionnel).

La liste des fonctionnalités pour un champ de type UITextField est déjà disponible de manière native en ActionScript.

La seule chose qui change, c’est la façon de les implémenter.

Nous passons donc directement à la création du Cahier Des Charges Techniques.

II – Cahier Des Charges Techniques du TextField

Pour cela, nous allons créer la classe UITextField. Nous lui ajoutons des méthodes supplémentaires. Celles-ci nous permettront de formater le texte sans passer par la classe TextFormat ni les autres classes annexes.

Voici l’ensemble des méthodes de la classe UITextField :

  • Méthode changeFormat : elle permet de définir le formatage du texte ou d’un groupe de caractères à l’aide d’une seule et unique méthode.
  • Méthode changeLetterFormat : cette méthode permet de définir le format d’une seule lettre.
  • Méthode getLetterFormat : elle permet de récupérer le format d’une seule lettre.
  • Getter/ Setter appelé font : pour changer et récupérer la police de caractère. L’embarquement des polices sera géré automatiquement par le setter qui déterminera si la police est une police système ou non.

 

  • Méthode convertToInput : pour convertir le texte en champ de saisie.
  • Méthode convertToDynamic : pour convertir le texte en champ dynamique.
  • Nous implémentons également des méthodes pour changer l’alignement et le redimensionnement automatique du texte : alignCenter, alignRight, alignLeft, alignJustify, autoSizeRight, autoSizeLeft, autoSizeCenter, autoSizeNone. Des méthodes qui nous simplifient l’utilisation des classes TextFieldAutoSize et TextFieldAlign.

 

 

  • Getters / Setters maxWidth et maxHeight : permettent de définir une largeur et une hauteur maximale.
  • Méthode destroy : et enfin nous implémentons une méthode qui permet de détruire proprement notre composant. Elle ressemble de très près à la méthode destroy de la classe UIComponent.

 

Conclusion

Nous disposons maintenant d’un champ texte avec une mise à jour de son formatage grandement facilitée.

A l’utilisation, le composant UITextField se révèle être une véritable bénédiction pour manipuler un champ texte.

Évolutions des fonctionnalités

Pour améliorer notre Composant AS3 TextField, vous trouverez ci-dessous un exemple d’utilisation.

A vous de jouer !

TextField avec des fonts dynamiques

Je vous propose d’utiliser des fonts (polices) dynamiques pour vos textes.

Amusez-vous en utilisant des polices originales : découvrez un vaste choix de polices gratuites sur dafont. Elles ne sont généralement pas disponibles dans les polices de bases des systèmes d’exploitations (Windows, Linux, MAC). Il est donc nécessaire de les charger dans le Flash Player.

La lecture de cet article : Utiliser des polices partagées dynamiquement en AS3, devrait grandement vous faciliter la tâche!

L’Editeur ActionScript FDT 4.0 simplifie énormément la création des swf de polices partagées : Téléchargez le guide d’utilisation de l’Editeur ActionScript FDT.

Sources commentées

  • com.actionscriptfacile.ui.text.UITextField.as
  • UITextFieldExample.as

Vous trouverez ci-dessous l’ensemble des classes créées. Elles sont commentées pour vous permettre de comprendre leur fonctionnement.

Vous pouvez télécharger le fichier zip :

Télécharger “Component TextField Framework actionscript-facile”

component_textfield_framework_actionscript-facile.zip – Téléchargé 1236 fois – 74,15 Ko

Et vous, comment utilisez-vous le texte / TextField en AS3 ?

Quelles classes avez-vous développé pour simplifier la création des champs textes dynamiques avec Flash ?

Je serais ravis de voir vos différentes implémentations. Utilisez les commentaires juste en dessous pour partager votre code.

[codesyntax lang= »actionscript3″ title= »com.actionscriptfacile.ui.text.UITextField.as » bookmarkname= »com.actionscriptfacile.ui.text.UITextField.as « ]

[/codesyntax]

[codesyntax lang= »actionscript3″ title= »UITextFieldExample.as » bookmarkname= »UITextFieldExample.as »]

[/codesyntax]