Bonjour,

Je récupère le nom et prenom des emloyés à partir d'une BD et j'affiche la liste dans une jTable à laquelle j'ajoute à la fin un jCheckBox.

Ensuite j'ai dans ms forme un bouton pour supprimer de la BD les employés qui seront choisis dans la jTable.

La question est comment récupérer les lignes (employés) dont la jCheckBox est cochée.

voici mon code :

1-J'affiche le résultat du select à l'affichage de ma forme.

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
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
 
 
..
..
String[] colNames={"Nom","Prenom","Selection"};
..
..
private void formComponentShown(java.awt.event.ComponentEvent evt) {
        // TODO add your handling code here:
 
        try
        {
         listeemploye=new ArrayList();
        Class.forName("org.postgresql.Driver");
        Connection conX = DriverManager.getConnection("jdbc:postgresql://localhost:5432/mabase","postgres","postgres");
        PreparedStatement ps=conX.prepareStatement("Select nom,prenom from employes order by nom");
        ResultSet rs=ps.executeQuery();
        while(rs.next())
       {
 
       Employe employe=new Employe(rs.getString(1),rs.getString(2));
        listeemploye.add(employe);
       }
        conX.close();
 
         Iterator iterateur = listeemploye.iterator();
            Object[][] data = new Object[listeemploye.size()][3];
            int i = 0;
 
            while(iterateur.hasNext()){
                Employe e= (Employe)iterateur.next();
                data[i][0] = e.nom;
                data[i][1] = e.prenom
                data[i][2] = e.isSelected();
               i++;
            }
 
            jTable1.setModel(new DefaultTableModel(
            data, colNames
            )
                    {
    Class[] types = new Class [] {
        java.lang.Object.class, java.lang.Object.class, java.lang.Boolean.class
    };
 
                @Override
    public Class getColumnClass(int columnIndex) {
        return types [columnIndex];
    }
}
                    );
 
 
     }
      catch(SQLException sle)
       {
        //traitement
       }
 
        catch(ClassNotFoundException cnfe)
       {
        //traitement  
       }
 
 
 
 
    }
2-Par ailleur j'ai la classe employé avec un constructeur nom et prenom et un booleen selected pour les checkbox.

3-Maintenant je voudrais recuperer les ligne selectionnées pour les supprimer de la base dans un evenement d'un bouton "Suppression".