Effacer un filtrage d'un jtable
J'ai un jtable rempli avec des données j'ai créer une méthode qui lorsque je fai un clic droit sur une colonne m'affiche JOptionPane.showInputDialog
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
|
myTable.getTableHeader().addMouseListener(new MouseAdapter() {
public void mouseClicked(MouseEvent e) {
int buttonDown = e.getButton();
if(buttonDown == MouseEvent.BUTTON3) {
// Bouton DROIT enfoncé
int column = mytTable.columnAtPoint(e.getPoint());
String name = mytTable.getColumnName(column);
String ff=JOptionPane.showInputDialog(name);
if(!ff.equals("")&&(!ff.equals(null))){
applyTableFilter(ff, column);
}
}
}
}); |
et la méthode applyTableFilter:
Code:
1 2 3 4 5 6 7 8 9 10 11 12
| private void applyTableFilter(String filterText, int index) {
String s1= Pattern.quote(filterText);
String s2 = ".*" + s1 + ".*";
// On applique le filtre a la JTable
((DefaultRowSorter) myTable.getRowSorter())
.setRowFilter(RowFilter.regexFilter(s2, index));
} |
mon 1er souci est: quand je clique sur anuler de mon showInputDialog me génère une exception.
le deuxieme lorsque j'applique mon filtre j'arrive pas à l'annuler.
De l'aide SVp