Pergunta

Se eu tiver um botão como o de esta imagem:

http://www.freeimagehosting.net/image.php? 4cd775814c.png

como eu poderia fazer a visualização do texto em si verticalmente? Como em

j
B
u
t
t
o
n
1

Eu gostaria de saber como fazer a mesma coisa para JLabel. Tenho certeza de que tem que haver uma maneira melhor do que criar tantos rótulos, pois há caracteres na cadeia. Certo?

EDIT: como posso inserir uma imagem em meu post? O botão para a imagem mostra a imagem na seção de visualização, mas quando eu realmente lançar os dados, eu só obter algum para trás o texto, como as marcas estão ficando confuso.

Foi útil?

Solução

Você pode usar HTML para JButton ou JLabel. Então

button = new JButton("<html>J<br>b<br>u<br>t<br>t<br>o<br>n<br>1</html>");

deve fazer o truque.

Outras dicas

Eu não sei se isso é útil para você, mas esta amostra mostra como fazer um rótulo vertical. A diferença é que ele gira todo o texto (e / ou o ícone) em vez de empilhar as cartas. Eu não sei o quão difícil seria para modificá-lo para fazer o que você está pedindo.

A vantagem de fazê-lo desta maneira é se as etiquetas podem mudar em tempo de execução; gerando grandes cadeias de HTML pode ser uma dor em comparação com uma label.setUI(new VerticalLabelUI(true)); simples (e você não precisa se preocupar com <> no texto do rótulo).

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top