Jtable - Table Header

3 respostas
S

Estou com muita dificuldade para adicionar JComboBox ao Header de uma table. Estou precisando criar um sistema de auto-filtro idêntico aquele utilizado pelo excel, onde, o header da Jtable tem uma Combobox com todos os valores possíveis para a coluna em questão. Ao selecionar um certo valor, as linhas da Jtable são filtradas de acordo com os valores assumidos pela ComboBox.
Já tentei colocar uma ComboBox por meio de um renderer, entretanto, quando clico na combo, o header chama o evento de ordenação, e não abre a lista de itens. Acima da ComboBox, é preciso ter um Label, que indica o nome da coluna. Como fazer algo eficiente, nesse caso?

já tentei desabilitar a ordenação da coluna.
já procurei no forum e não achei algo que me ajudasse.
já tentei adicionar as ComboBox na primeira linha da Jtable, mas isso não ficou muito eficiente.

Muito Obrigado

3 Respostas

ViniGodoy

Primeiramente, seja bem-vindo ao GUJ!

Quando possível, dá uma lida nesse artigo, que mostra como usar alguns recursos do fórum. :wink:

Rapaz… aqui tivemos que fazer um componente idêntico e também não conseguimos por esse caminho…

O que fizemos foi efetivamente trocar a célula por um painel, contendo um JToggleButton com a flecha. Quando o botão é clicado, abrimos um popup menu no cabeçalho.

S

meu tópico não estava com uma boa formatação?

não entendi direito. O painel foi adicionado a célula da primeira linha ou ao Header?
tentei adicionar um painel com um Jlabel, e uma combobox ao header, mas como eu disse, eles não ficaram clicaveis.

se colocar na primeira linha da table, é necessário fazer isso toda vez que a table for ordenada, correto?

Tem como você me enviar uns exemplos?

ViniGodoy

Na verdade, baseamos nossa implementação na do TableSorter, que você pode ver o funcionamento nesse demo.

Note que esse model adiciona um cabeçalho novo a tabela, com uma flechina e com a possibilidade de ser clicado.

Infelizmente, não posso te eviar exemplos, pois o código é de propriedade aqui da empresa… :frowning:

Quanto à formatação, seu tópico estava ok. Apenas está se tornando padrão por aqui enviar o artigo para todo mundo novo no GUJ. Assim quem começa, já começa direito! :wink:

Criado 12 de março de 2007
Ultima resposta 13 de mar. de 2007
Respostas 3
Participantes 2