[JTable] Changement de model à l'éxécution
Bonjour
J'ai un JTable dont je souhaite changer le modèle en cours exécution.
Ces models héritent d'un model commun qui extends AbstractTableModel :
Code:
1 2 3
| Model1|
Model2|->NavigateurTableModel->AbstractTableModel
Model3| |
Le problème étant que lorsque je change mon model via setModel() mes colonnes changent bien mais le jtable ne prends pas en compte le nouveau nombre de lignes du model.. il essaye toujours d'afficher le nombre de lignes renvoyées par le getRowCount() du model initial..
Donc si j'ai plus de données, ca passe, si j'en ai moins je me tape un joli
Code:
1 2 3 4 5
| Exception in thread "AWT-EventQueue-0" java.lang.IndexOutOfBoundsException: Index: 1, Size: 1
at java.util.ArrayList.RangeCheck(Unknown Source)
at java.util.ArrayList.get(Unknown Source)
at fr.thales.icadis.pid.gui.models.NavigateurTableModel.getValueAt(NavigateurTableModel.java:57)
at fr.thales.icadis.pid.gui.models.DUITableModel.getValueAt(DUITableModel.java:31) |
j'ai essayé les fireTableDataChanged() et fireTableRowsDeleted() mais rien n'y fait..
Bref comment puis je signaler à mon Jtable que le nombre de lignes du model à changé?
Merci