Bonjour, voici mon code concernant une JTable ; en fait, son contenu est réactualisé à chaque clic sur un bouton...
Pour le premier clic, ça marche sans problème mais dès qu'on clic plusieurs fois, il semblerait qu'il ne supprime pas la première ligne (ou la dernière) ; où est l'erreur ?

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
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
 
 if (e.getSource() == afficher) {
        //Réinitialisation des modèle pour éviter les doublons
        for (int i=0;i<modelCT.getRowCount();i++){
          modelCT.removeRow(i);
        }
tableCT.setModel(modelCT);
//Recherche des différents chargés de travaux et de leurs périodes d'activités
        String requete="SELECT P.nom, P.prenom, A.datedebut,A.datefin,A.numeroverification from ARCHIVESCT A, personnes P where idatt = '" +
            this.attestations.getSelectedItem() + "' AND P.login=A.CT  ORDER BY datedebut";
        //Nombre de colonnes pour savoir comment se distribuent, via un tableau, les données
        int colNb = 5;
        //Exécution de la requete
        ResultSet rs = db.getQuery(requete);
        int i=0;
 
        while (rs.next()) {
 
          //Affectation
          String nom=rs.getString("nom");
          String prenom=rs.getString("prenom");
          String debut=rs.getString("datedebut");
          String fin=rs.getString("datefin");
          String num=rs.getString("NUMEROVERIFICATION");
          //Récupération des dates
          String[] tab=debut.split(" ");
          debut = franciserDate(tab[0]);
          if (fin!=null){
            //si il y a une date de fin
            tab = fin.split(" ");
            fin = franciserDate(tab[0]);
          }
 
          else{
            //Sinon ; sans cela : risque d'erreur de variable non initialisée
            fin="";
          }
          //Tableau pour insérer les données de la ligne dans le modèle
          String[] objects = new String[colNb];
          objects[0]=nom;
          objects[1]=prenom;
          objects[2]=debut;
          objects[3]=fin;
          objects[4]=num;
          //Transfert du tableau vers le modèle
          modelCT.addRow(objects);
          i++;
        }
        System.out.println(modelCT.getRowCount());
        //System.out.println(i);
        //Modification de la table des chargés de travaux
        tableCT.setModel(modelCT);
Je pense que je vous ai donné trop de code étant donné qu'il semblerait que cela ne concerne que la suppression d'une ligne (la première ou la dernière)