Bonjour j'aurais une petit question svp
Dans le cadre d'un petit projet je dois afficher une Jtable contenant plusieurs colones,
La table est allimentée par une ArrayList d'objet (chaque membre de l'objet est une colone)
je dois pouvoir trier La Jtable mais l'arraylist doit aussi être triée en même temps
ainsi quand je choisis une ligne dans la Jtable ça sera la même ligne dans l'arraylist car je dois pouvoir passer cette ligne la à un autre programme par webservice plus tard.


Expl:

protected List<VSREVTPSOut> data = new ArrayList<VSREVTPSOut>();
...
Je rajoute des informations dans la liste


ensuite j'affiche la Jtable
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
VehicleEventsTableModel model = new VehicleEventsTableModel(data);
 
protected JTable table = null;
TableRowSorter<VehicleEventsTableModel> sorter = new TableRowSorter<VehicleEventsTableModel>(model);
                        table.setModel(model);
                        table.setRowSorter(sorter);
                        model.customizeColumns(table);
                        table.addMouseListener(new MouseAdapter(){
                            @Override
                            public void mouseClicked(MouseEvent e){
                                if (e.getClickCount() == 2){
                                    Point p = e.getPoint();
                                    int row = table.rowAtPoint(p);
                                    int col = table.convertColumnIndexToModel(table.columnAtPoint(p));
                                    if (row >= 0 && col >= 0) {
 
                                        System.out.println("double click on table row="+ row + "col=" + col );
                                        VSREVTPSOut selectedrow = vSREVTPSOut.get(row);
                                        System.out.println("Selectedrow:"+ selectedrow.getTEVENTXO());
 
                                    }
                                }
                            }
                         } );
Donc avec ce que j'ai pour le moment
je peux trier la jtable sur chaque colonne dans l'ordre croissant et décroissant
mais la liste reste la même et ainsi la variable selectedrow n'est plus forcément la même ligne que celle que j'ai choisir après avoir trié une colone.
J'aimerais que le tri entre la Jtable et la liste soit synchro?
pourriez vous m'aider svp?
je vous en remercie grandement à l'avance. :-).