JComboBox (problema ao pegar o indice)

Olá pessoal,

Estou com um problema qdo eu recupero o nro do indice de um ítem num JComboBox. Se eu possuir mais de um ítem com o mesmo nome, o índice q me retorna é sempre o do primeiro, independente d qual deles eu clicar.
Alguém saberia me dizer se existe alguma forma de tratar isso sem q eu precise mudar nenhum caractere destes itens para diferenciá-los?

[]´s
Aislan

Olá Aislan,

tente um ActionPerformed com getSelectedIndex()…

Cleiber

Caro Cleiber,

Eu já estou usando o método getSelectedIndex() para pegar o indice. O problema que estou enfrentando é que se mais de um ítem do meu combobox tiver o mesmo nome (ex: no indice 1 eu tenho o nome ‘João’ e no indice 5 tem outro ‘João’), me retorna sempre o índice 1, independente d qual dos dois ‘João’ eu clique…Entendeu?

[]´s
Aislan

De acordo com a API da classe JComboBox ele retorna a primeira ocorrência do elemento selecionado…

Você realmente precisa desse índice???

T+

Diego,

Eu fiz um tratamento com indice (q naum funcionou, justamente pelo q vc me disse a respeito da documentação na API), que fizesse a distinção quando mais de um item numa combo tivessem o mesmo valor. Para situações como essa, como eu poderia fazer isso?

[]´s

Mais que tratamento é esse?? Tente explicar melhor o que você quer fazer…

T+

Diego, primeiramente me desculpe pela demora…

Bom, veja a minha situação. Eu preciso adicionar ítens a um combo box onde alguns deste ítens possuem nomes iguais, certo. Quando eu clico num ítem, eu pego o nome e passo por parâmetro em um metodo que faz um select na base e retorna alguns dados. A questão é: “Mas nesses casos onde existem mais de um ítem igual?”. Daí a idéia de fazer tratamentos pelos índices. veja a seguinte estrutura dos ítens no combo.
idx: valor
0 | – Documentos de saída-----
1 | Vendas
2 | Transferências
3 | Devoluções
4 | – Documentos de entrada –
5 | Compras
6 | Transferências
7 | Devoluções

Eu poderia fazer um controle onde se o índice selecionado fosse maior que o índice 4 ( – Documentos de entrada --), 7 por exemplo, ele buscaria as Devoluções das operações de entrada, entendeu?
O detalhe é que, independente se eu clicar no indice 3 ou 7 (ambos Devoluções), ele me retorna sempre o indice 3, o que deixa impossível de eu fazer este tipo de controle.

No momento, a solução encontrada foi colocar um prefixo + nome e adicionar ao combo box (E - Devoluções e S - Devoluções), mas gostaria que ficasse estruturado como na ideia acima.

Grande abraço,
Aislan