33 votes

comment obtenir un contrôle de texte Flex pour le retour à la ligne

Je suis de la création d'un Flex d'Adobe application et j'ai un contrôle de Texte (mx:Text), qui est censé être utilisé lorsque vous avez besoin de plusieurs lignes de texte non modifiable (par opposition à une Étiquette, qui est une seule ligne de texte non modifiable). Mon texte ne s'ajuste pas lorsque je redimensionner la fenêtre du navigateur pour être plus petit que le texte (ou de le charger avec la fenêtre du navigateur déjà plus petits). Lors de la consultation de ce doc que j'ai trouvé, il semblerait que le mot-wrap fonctionnalité se produit uniquement si vous spécifiez une largeur absolue en pixels. C'est exactement ce que j'essaie d'éviter. Je veux que le texte s'ajuste pour s'adapter à l'intérieur de la taille pour mon Flash objet de sorte qu'il est toujours visible... est-il un moyen pour accomplir cette tâche, par le biais de certains biens, je suis absent ou peut-être un autre contrôle? Merci.

5voto

Christian Nunciato Points 8461

Pourcentage des largeurs et des hauteurs de réellement résoudre leur pixel équivalents, de sorte que leur utilisation devrait atteindre l'emballage et le dimensionnement relatif vous êtes à la recherche pour. Par exemple:

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" width="100%" height="100%">
    <mx:Text width="100%" height="100%" text="Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.  Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum." />
</mx:Application>

C'est, à condition, il y a un réglage de la largeur de toute nature, dimensionnement relatif (un nombre explicite, un pourcentage, une base de contraintes d'ancrage (par exemple, haut, droite, bas, gauche, etc.) en conséquence, le texte s'ajuste naturellement. Cette approche fonctionne pas avec la disposition que vous utilisez? Sans code, c'est difficile à dire, mais tu as raison-habillage de ne nécessiter de définir une largeur liés à la propriété sur le conteneur.

Le redimensionnement et l'emballage peut être un peu délicat, si, selon le contexte, donc, si vous trouvez cela ne fonctionne pas, essayez de poster du code -- je suis sûr que l'un de nous sera en mesure de vous aider à le comprendre.

4voto

jerrylroberts Points 2381

Si vous essayez de faire en sorte que le retour à la ligne fonctionne à l'intérieur d'un composant MXML, essayez ceci:

 <mx:Text id="testText"  
  width="{ this.width }"
  height="100%"   
  text="Your text here" />
 

En règle générale, vous définissez la largeur du composant et définissez la hauteur à 100% pour lui permettre d’envelopper correctement lorsque vous réduisez la taille.

0voto

David Hanak Points 5960

Vous pouvez essayer d' ajouter un gestionnaire d'événements au nœud parent Event.RESIZE , et appelez le texte de l' objet validateNow() méthode. (Peut-être précédé d'un appel invalidateSize() .) Pourquoi cela n'arrive-t-il pas automatiquement, je ne peux pas le dire.

0voto

hwii77 Points 86

Je pense que l'application de VBox width = "100%" et de Text width = "100%" est la méthode la plus simple. Remarque: si le texte est généré dynamiquement, n'oubliez pas de faire text.percentWidth = 100

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X