Question

Dans l'espoir d'obtenir l'aide de quelques Flex 3/4 gourous là-bas ...

J'essaie de changer dynamiquement la couleur d'un sous-ensemble / portion de texte dans un contrôle Spark TextArea. Utilisation de la base TextArea MX, je pourrais tirer parti du type mx.controls.textClasses.TextRange et changer la couleur suit directement:

TextRange tr = new TextRange(theTextAreaControl, false, beginIndex, endIndex);  tr.color = somePredefindColor;

paramètres d'entrée constructeur TextRange:

  1. 1er argument: Le contrôle TextArea qui fournira un accès au sous-jacent textField propriété
  2. 2ème argument: Indique l'TextRange ne modifiera pas le contenu du TextArea
  3. 3ème argument: La position de l'index de début dans la chaîne de texte TextArea
  4. 4ème argument: La position d'index se terminant par la chaîne de texte TextArea

Comment pourrais-je faire de manière pour un contrôle TextArea basé Spark? Je cherche à modifier dynamiquement la couleur de police pour une plage de texte, non seulement l'ensemble textarea et je ne peux pas préciser statiquement la couleur de police. Le problème que je tombe sur lorsque vous essayez de réutiliser le type TextRange est que le 1er argument est censé fournir textField la propriété, qui est actuellement pas sur le contrôle TextArea base Spark. Je pensais à l'extension du contrôle TextArea base Spark pour fournir cette propriété accesseur mais cela semble exagéré et probablement pas la meilleure approche.

Toute aide serait grandement appréciée.

Merci, Michael

Était-ce utile?

La solution

Lors de la manipulation de composants de texte Spark, vous voulez utiliser Text Layout Framework (TLF), qui est construit au-dessus du moteur Flash Text (ETP) qui a été introduit dans Flash Player 10. Il vous donne un contrôle important sur comment le texte est affiché Voici un bon endroit pour commencer (au prix d'être assez complexe.): Utilisation de Text Layout Framework

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top