Rafraichir JTable

Résolu/Fermé
Kilkenny95 Messages postés 151 Date d'inscription lundi 24 septembre 2018 Statut Membre Dernière intervention 31 août 2020 - Modifié le 28 févr. 2019 à 10:09
Kilkenny95 Messages postés 151 Date d'inscription lundi 24 septembre 2018 Statut Membre Dernière intervention 31 août 2020 - 4 mars 2019 à 08:37
Bonjour à toutes et à tous,

J'ai créer une JTable provenant d'une base de données, j'arrive a supprimer une donnée via le boutons "supprimer" mais aucun moyen re refresh automatiquement mon tableau, j'ai pas cherché sur internet mais je ne trouve rien qui marche.

Si une bonne âme pouvait m'aider
public class ProductList extends JFrame {
    DefaultTableModel model = new DefaultTableModel();
    Container container = this.getContentPane();
    JTable jTable = new JTable(model);
    private JButton supprimer = new JButton("Supp Data");


    public ProductList() {
        
        container.setLayout(new FlowLayout((FlowLayout.LEFT)));
        model.addColumn("id");
        model.addColumn("name");
        model.addColumn("localisation");
        model.addColumn("historique");
        model.addColumn("etat");
        container.add(supprimer);
        

        try {
            Class.forName("com.mysql.cj.jdbc.Driver");
            Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/bdd_mspifm_mysql?zeroDateTimeBehavior=CONVERT_TO_NULL&serverTimezone=UTC", "admin", "mspifm46");
            PreparedStatement ps = con.prepareStatement("SELECT * FROM product");
            ResultSet rs = ps.executeQuery();
            while (rs.next()) {
                model.addRow(new Object[]{rs.getInt(1), rs.getString(2), rs.getString(3), rs.getString(4)});
            }
        }
                catch (Exception e){
                    System.out.println(e.getMessage());
                }
                JScrollPane pg = new JScrollPane(jTable);
                container.add(pg);
                this.pack();

                supprimer.addActionListener(new ActionListener() {
                    @Override
                    public void actionPerformed(ActionEvent e) {
                        if (e.getSource() == supprimer){
                        int rowSelected = jTable.getSelectedRow();
                        int idSelected = (int) jTable.getValueAt(rowSelected, 0);
                        System.out.println(idSelected);
                            ProductDaoImpl pdi = new ProductDaoImpl();
                            pdi.delete(idSelected);
                            System.out.println("element supprimer: "+idSelected);


                        }
                    }


                });
                


    }}
A voir également:

2 réponses

Jithel Messages postés 843 Date d'inscription mercredi 20 juin 2018 Statut Membre Dernière intervention 31 août 2021 171
28 févr. 2019 à 15:56
1
Kilkenny95 Messages postés 151 Date d'inscription lundi 24 septembre 2018 Statut Membre Dernière intervention 31 août 2020
4 mars 2019 à 08:37
Finalement je m'en suis sortie, merci à tous !
0
tarek_dotzero Messages postés 817 Date d'inscription jeudi 19 juillet 2007 Statut Membre Dernière intervention 12 avril 2022 121
Modifié le 2 mars 2019 à 00:18
Bonjour,

jTable.validate();
jTable.repaint();
1