Dúvida com JComboBox

4 respostas
Rummenigge

Pessoal, queria saber como faço para colocar identação nos itens de um JComboBox, por exemplo:

Faça de conta que isso é um JComboBox!

+----------------+
|palavra1    |\/||
+----------------------+
|palavra1              |
|    palavra2          |
|        palavra3      |
|            palavra4  | 
+----------------------+

Se alguém poder ajudar agradeço!

4 Respostas

visola

O que você está colocando dentro do Combo?
Só String mesmo?
Como define quanto cada item receberá de identação?

Se for só String, pode usar o “\t” na frente.
Se for qualquer outro objeto, recomendo criar seu próprio ListCellRenderer. Pode ler mais sobre isso aqui.

Rummenigge

Oh! Esqueci de informar que antes das Strings tem um ícone, queria identar tanto a String quanto o ícone.

+----------------+  
|:)palavra1    |\/||  
+--------------------------+  
|:) palavra1               |  
|    :) palavra2           |  
|        :) palavra3       |  
|            :) palavra4   |   
+--------------------------+
visola

Então não vai ter jeito, tem que implementar seu próprio renderer mesmo.
Sugiro usar 3 JLabels, um para marcar o espaço na frente (identação), outro para o ícone e outro para o texto.
Dá uma olhada no artigo, lá explica como fazer isso.

Rummenigge

Valew ai, vou dar uma olhada!

Criado 11 de janeiro de 2011
Ultima resposta 12 de jan. de 2011
Respostas 4
Participantes 2