Oi Inacio,
vou te explicar uma estrategia um pouco complicada, mas que
funciona. Eu, pelo menos, nao conheco nenhuma outra forma. Nao estou
lembrado bem se a classe JLabel possui um metodo tipo setWrapLines(true),
que faria com que, caso o string fosse grande demais, ele fosse "quebrado"
em pedacos.
Ai vai a minha sugestao:
- Crie uma classe que extende de DefaultTreeCellRenderer (pacote
javax.swing.table) e sobreponha o metodo getTableCellRendererComponent
(esse metodo eh o responsavel por retornar o componente que deve ser
mostrado na celula da tabela)
- Nesse metodo voce deve instanciar um JPanel e quantos JLabel's
quanto for necessario em termos de numero de linhas que voce deseja ter
- O valor (texto) do cabecalho deveria ser algo do tipo
"Credito|ou|Debito". Dessa forma, voce usa um StringTokenizer para
"partir" esse string e cada um dos tokens obtidos seriam um JLabel
diferente
- Aih eh soh voce posicionar os JLabel's no seu JPanel e retornar
o JPanel como o componente a ser desenhado.
Eh meio complicado, mas funciona direitinho. Nao sei bem qual seria o
impacto de fazer um "split" no string a cada redesenho do cabecalho, mas
acho que nao eh gargalo algum nao.
Abracos,
Bruno.
On Thu, 24 Feb 2000, Nil Inacio Santos wrote:
> Tenho uma JTable onde, por economia de espaco, gostaria de colocar os
>titulos com 2 ou mais linhas. Alguem pode explicar como fazer isso?
>
> Ex.:
>
> Tabela antes:
>
> | Credito ou Debito | Titulo 2 | Titulo 3 | Titulo 4|
> C
> D
> C
> C
>
> Tabela depois:
>
> | Credito | Titulo 2 | Titulo 3 | Titulo 4|
> | ou | | | |
> | Debito | | | |
> C
> D
> C
> C
>
>
> Java 4Ever,
>
> Nil
>
______________________________________________________________
Bruno Diniz de Paula
[EMAIL PROTECTED] - UFMG
[EMAIL PROTECTED] - Telemig Celular
"Coracoes ao alto e pes no chao."
"A verdadeira experiencia com Deus nao nos faz
fugir da realidade, mas nos da forcas para
enfrenta-la e transforma-la."
Pe. Zeca
* Para nao receber mais e-mails da lista, acesse
<http://www.sun.com.br:8080/guest/RemoteAvailableLists>, coloque seu e-mail, escolha a
lista <[EMAIL PROTECTED]> e de um <submit>.