Sortowanie komparatorem modelu tabeli ?

0

Hej :)
Mam model tabelki który wiąże 2 ArrayListy:

    public Object getValueAt(int r, int c){
            return W(r, c);
    }
public Object W(int row, int column){
     Wedkarz wedkarzOb = (Wedkarz) wedkarzAL.get(row);
     switch (column){
         case 0:
             return wedkarzOb.getA();
         case 1:
             return wedkarzOb.getB();
         case 2:
             return wedkarzOb.getM();
         case 3:
             {
                 int x = wedkarzOb.getOrgan();
                 for(int i=0; i<rybyAl.size(); i++){
                     Ryby rybyOb=(Ryby) rybyAl.get(i);
                     if(rybyOb.getOrgan()==x)
                         return rybyOb.getId();
                 }
             }
         case 4:
             {
...
         }
         default: return null;
}
      }

mam komparator w klasie Ryby ktory sortuje ID ryby.
za pomoca przycisku chce posortwac tabelke:

  
Collections.sort(rybyAl, Ryby.getIdComparator());
table.updateUI(); 

Metoda działa, komparator jest okej, tyle że nie widze wyników, jak sie domyślam ma to zwiazek z tym że sortowanie ID ryby nic nie daje bo model dobiera ID wzgledem kolejnosci wierszy na lisice wedkarzAl porownojac zmienne 'Organ' i wypluwa ID, zatem sortowanie tamtej listy nic nie daje.
Moje pytanie jest takie czy da sie to jakos zrobic zeby dzialalo tak jak chce?
Chcialbym bez TableRowSortera tak zeby sortowanie odbywalo sie po kliknieciu w przycisk, a nie po naglowkach :)
Mam tez sortowanie po zmiennych z ArrayListy wedkarz i ono dziala OK. wiec jakas gruntowna zmiana model tabelki unicestwi tamto poprawne dzialanie...
chyba ze juz w ogole zle mysle

Z gory dzieki!

0

Przejrzyj dokładniej API JTable, musisz odświeżyć tabelę.

1 użytkowników online, w tym zalogowanych: 0, gości: 1