Recherche chiffre dans un jtable
Bonjour a tous,
je vers vers vous car j'ai un petit soucis mais rien de très grave.
J'ai ces deux fonction qui permettent de faire une recherche dans un jtable, la premier fonctionne parfaitement mais la deuxième ne fonctionne pas car dans cette colonne (matricule) il n’y a que des chiffre
et dans l'autre des lettre.
Comment puis-je faire pour faire fonctionner ma deuxième fonction(filtreMatricule) et faire la recherche sur des chiffre qui sont dans un jTable ?
Merci d'avance ;)
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
| private void filtrePrenom() {
TableRowSorter<TableModel> rowSorter = new TableRowSorter<>(table.getModel());
table.setRowSorter(rowSorter);
String filterValue = rPrenom.getText().trim();
if (filterValue.isEmpty()) {
rowSorter.setRowFilter(null);
} else {
RowFilter<Object, Object> filter = new RowFilter<Object, Object>() {
public boolean include(RowFilter.Entry<? extends Object, ? extends Object> entry) {
String name = (String) entry.getValue(1); // colonne Prenom
return startsWithIgnoreCase(name, filterValue);
}
private boolean startsWithIgnoreCase(String string, String prefix) {
return string.toLowerCase().startsWith(prefix.toLowerCase());
}
};
rowSorter.setRowFilter(filter);
}
}
private void filtreMatricule() {
TableRowSorter<TableModel> rowSorter = new TableRowSorter<>(table.getModel());
table.setRowSorter(rowSorter);
String filterValue = rMatricule.getText().trim();
if (filterValue.isEmpty()) {
rowSorter.setRowFilter(null);
} else {
RowFilter<Object, Object> filter = new RowFilter<Object, Object>() {
public boolean include(RowFilter.Entry<? extends Object, ? extends Object> entry) {
String name = (String) entry.getValue(6); // colonne matricule
return startsWithIgnoreCase(name, filterValue);
}
private boolean startsWithIgnoreCase(String string, String prefix) {
return string.toLowerCase().startsWith(prefix.toLowerCase());
}
};
rowSorter.setRowFilter(filter);
}
} |