Texto en vertical en JLabel

rocio
29 de Agosto del 2003
Poner texto en vertical en un JLabel

chuidiang
29 de Agosto del 2003
Te cuento una forma que he encontrado, aunque no se si es la mejor.

Creas una clase AffineTransform. Esta clase permite hacer rotaciones y esta en java.awt.geom.

AffineTranform transformada = new AffineTransform();

Le dices que quieres hacer una rotacion de 90 (3.1416/2.0 en radianes)

transformada.setToRotate (3.1416/2.0);

A la etiqueta le pides la fuente

Font fuente = etiqueta.getFont();

a la fuente la giras con la transformada esa

Font nuevaFuente = fuente.deriveFont (transformada);

Esta nueva fuente la metes en la etiqueta

etiqueta.setFont (nuevaFuente);

y le pones el texto

etiqueta.setText ("hola");

No he conseguido controlar muy bien donde sale el texto dentro de la etiqueta, pero el metodo setToRotate() tiene posibilidad también de hacer rotación y traslación. Es cuestión de que juegues ahora un poco.


Se bueno.