Vixi cara não manjo muito mas acho que da para você pegar o count ou size da Jlist , criar uma outra list e percorrer e adiciona os valores dentro de um for mesmo pelo dataList.setSelectedIndex(1) .
Eu já peguei o tamanho da lista e consigo percorrer ela tranquilamente, eu não consegui é sincronizar o meu array com a minha lista.
Eu pego o seu tamanho e adiciono +1 a lista aumenta uma posição, o mesmo não acontece com o array, ai a lista fica na posição 1 e o array na 0.
É como se eu estivesse visualizando uma música do Capital Inicial mais quando eu clico nela toca Nirvana, pois somente a Lista visual foi alterada a lista que é responsável pelas músicas não foi alterada.
A classe JList possui o seguinte método: addListSelectionListener(ListSelectionListener listener), onde um evento é disparado a cada mudança na seleção da Jlist. Acho que você pode ordenar o ArrayList dentro deste evento de acordo com o conteúdo do ArrayList, já que o JList possui um ListModel que representa o conteúdo do JList. Será que te ajudei?!
A biblioteca GlazedLists provê classes para implementar List’s “observáveis”, ou seja, toda vez que houver manipulação em alguma lista, seu programa terá a oportunidade de reagir adequadamente:
Não… você não entendeu falei que pode resolver isso rapido se no final você percorrer a sua Jlist e add cada item em uma list.
Ou como disseram pode usar de um listenner para fazer a sua logica conforme você muda a JList você pode addicionar na sua list lenbrando que você podee adicionar em uma lista passando um indice " list.add(1,“valor”)" “empurrando” os itens que estavam ali para frente!
Galera agradeço a ajuda de todos mais não entendi muito bem oq falaram, segue o meu código, ele trabalha esclusivamente com a lista “ListaArquivos” que como eu ja falei é um Jlist, eu tb teria que alterar a posição da outra lista que é a “ListaMusica” que é um arraylist.
eu tenho que sincronizar essas duas listas pq elas trabalham com os mesmos arquivos, acredito que agora seja mais fácil vcs me ajudarem.
O seu ArrayList de objetos com dois atributos: nomeMusica e arquivoMusica, assim será mais fácil você sincronizar as duas. Você pode povoar o JList com o nomeMusica, e para ordenar o ArrayList você pode verificar pelo nomeMusica contido na JList, tudo isso dentro do evento do botão Subir.
Acho que assim ficará mais fácil manipular essas listas, já que desse modo as duas podem ser comparadas.
O seu ArrayList de objetos com dois atributos: nomeMusica e arquivoMusica, assim será mais fácil você sincronizar as duas. Você pode povoar o JList com o nomeMusica, e para ordenar o ArrayList você pode verificar pelo nomeMusica contido na JList, tudo isso dentro do evento do botão Subir.
Acho que assim ficará mais fácil manipular essas listas, já que desse modo as duas podem ser comparadas.
Será que ajudei?[/quote]
Ajudou sim emmanuelrock muito obrigado !!!
Ontem foi a minha apresentação e graças a Deus eu fui aprovado, só tenho que alterar coisas pakas na minha documentação, mais tudo bem.
Agradeço a todos deste fórum pela ajuda na realização deste projeto e acredito que sem ele o meu sistema não ficaria pronto.
Em breve pretendo disponibilizar o seu Jar e o código fonte do sistema para que ele possa ser utilizado por outras pessoas em suas aplicações e quem sabe ser um player aberto da comunidade do JUG, já venho a informar que o Gain Player, nome do meu player :D, funciona em Windows, Linux e em Mac um amigo ficou de testar para mim.