Récupérer lignes non filtrées d'une jtable
Fermé
lomaw
Messages postés
2
Date d'inscription
dimanche 30 juin 2013
Statut
Membre
Dernière intervention
1 juillet 2013
-
30 juin 2013 à 19:13
lomaw Messages postés 2 Date d'inscription dimanche 30 juin 2013 Statut Membre Dernière intervention 1 juillet 2013 - 1 juil. 2013 à 11:49
lomaw Messages postés 2 Date d'inscription dimanche 30 juin 2013 Statut Membre Dernière intervention 1 juillet 2013 - 1 juil. 2013 à 11:49
A voir également:
- Récupérer lignes non filtrées d'une jtable
- Recuperer message whatsapp supprimé - Guide
- Recuperer video youtube - Guide
- Comment récupérer un compte facebook piraté - Guide
- Impossible de récupérer mon compte gmail - Guide
- Récupérer mon compte facebook désactivé - Guide
2 réponses
KX
Messages postés
16753
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
25 novembre 2024
3 019
30 juin 2013 à 19:24
30 juin 2013 à 19:24
Pour partir sur les même bases, il serait bien que tu nous donne ton code existant, ça évitera d'avoir à refaire un code complet, totalement différent du tien, qui serais plus long à développer pour nous, et plus long à comprendre pour toi...
lomaw
Messages postés
2
Date d'inscription
dimanche 30 juin 2013
Statut
Membre
Dernière intervention
1 juillet 2013
1 juil. 2013 à 11:49
1 juil. 2013 à 11:49
D'accord KX, pas de soucis!
this.fromDateChooser = new JDateChooser();
this.toDateChooser = new JDateChooser();
et j'ai ajouté des listeners à ces deux JDateChooser
Voilà la méthode qui permet de filtrer la jtable suivant le critère "date"
protected void dateSearchSettingsChanged () {
/* ====================================================== */
Date fromDate = null;
Date toDate = null;
Date today = new Date();
//Filtrage suivant Dates (juste)
TableRowSorter sorter;
/* ====================================================== */
//TableRowSorter sorter = new TableRowSorter(bordereauTable.getModel());
if (fromDateChooser.getDate() == null && toDateChooser.getDate() == null)
//return;
this.bordereauTable.setRowSorter(null);
else
{
sorter = new TableRowSorter(this.bordereauTableModel);
List filters = new ArrayList<RowFilter<Object,Object>>();
if (fromDateChooser != null){
RowFilter filter1 = RowFilter.dateFilter(RowFilter.ComparisonType.AFTER, fromDate);
filters.add(filter1);
}
if (toDateChooser != null){
RowFilter filter2 = RowFilter.dateFilter(RowFilter.ComparisonType.BEFORE, toDate);
filters.add(filter2);
}
RowFilter filter = RowFilter.andFilter(filters);
sorter.setRowFilter(filter);
this.bordereauTable.setRowSorter(sorter);
}
}
Le résultat est bien obtenu! Maintenant je dois effacer ces lignes obtenues après filtrage et récupérer les lignes non filtrées du modèle.
J'espère que j'étais claire dans mon explication!
Merci d'avance
this.fromDateChooser = new JDateChooser();
this.toDateChooser = new JDateChooser();
et j'ai ajouté des listeners à ces deux JDateChooser
Voilà la méthode qui permet de filtrer la jtable suivant le critère "date"
protected void dateSearchSettingsChanged () {
/* ====================================================== */
Date fromDate = null;
Date toDate = null;
Date today = new Date();
//Filtrage suivant Dates (juste)
TableRowSorter sorter;
/* ====================================================== */
//TableRowSorter sorter = new TableRowSorter(bordereauTable.getModel());
if (fromDateChooser.getDate() == null && toDateChooser.getDate() == null)
//return;
this.bordereauTable.setRowSorter(null);
else
{
sorter = new TableRowSorter(this.bordereauTableModel);
List filters = new ArrayList<RowFilter<Object,Object>>();
if (fromDateChooser != null){
RowFilter filter1 = RowFilter.dateFilter(RowFilter.ComparisonType.AFTER, fromDate);
filters.add(filter1);
}
if (toDateChooser != null){
RowFilter filter2 = RowFilter.dateFilter(RowFilter.ComparisonType.BEFORE, toDate);
filters.add(filter2);
}
RowFilter filter = RowFilter.andFilter(filters);
sorter.setRowFilter(filter);
this.bordereauTable.setRowSorter(sorter);
}
}
Le résultat est bien obtenu! Maintenant je dois effacer ces lignes obtenues après filtrage et récupérer les lignes non filtrées du modèle.
J'espère que j'étais claire dans mon explication!
Merci d'avance