Comment faire pour centrer/wrap/tronquer le Texte pour l'adapter à l'intérieur d'un Rectangle en JavaFX 2.1?

J'ai besoin de créer dynamiquement des Rectangles sur Volet en JavaFX 2.1. Ensuite, je dois center/wrap/tronquer du Texte sur le Rectangle. Le texte a pour s'adapter à l'intérieur du rectangle. Je suis capable de centre et envelopper le texte avec le code suivant, cependant, si la longueur du texte est trop long, il apparaît en dehors du rectangle. Je veux créer le comportement comme l'Étiquette à l'intérieur StackPane, essentiellement si le Rectangle augmente, le Texte va grandir avec elle, mais reste toujours dans le centre du Rectangle et si le Texte ne tient pas dans le Rectangle, il sera tronqué en conséquence.

Rectangle r;

Text t;

...

//center and wrap text within rectangle

t.wrappingWidthProperty().bind(rect.widthProperty().multiply(0.9);

t.xProperty().bind(rect.xProperty().add(rect.widthProperty().subtract(t.boundsInLocalProperty().getValue().getWidth().divide(2)));

t.yProperty().bind(rect.yProperty().add(rect.heightProperty().divide(2)));

t.setTextAlignment(TextAlignment.CENTER);

t.setTextOrigin(VPos.CENTER);

Les propriétés que puis-je utiliser pour atteindre ce ou est-il une meilleure manière de faire ceci?

  • Pourquoi ne pas simplement utiliser une Étiquette avec une couleur d'arrière-plan?
InformationsquelleAutor Jason | 2012-05-17